From 62623d8d797a3d7314834c59ebc785e738965635 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Jun 2018 18:03:16 +0200 Subject: [PATCH 01/26] FDK sanitization fixes Bug: 110641440 Bug: 109936783 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Prevent bit buffer counter overflow. While long-term test we discovered a bit counter overflow in the bit buffer. The bit buffer state was only used by HCR and RVLC tool and can easily be substituted with FDKgetValidBits() call. The following patch completely removes the bit counter and all its obsolete functions. Change-Id: Icee0519d26a2aa62367d2dece59cd3d60ffcade7 Fix call to function sbrDecoder_Header() through pointer to incorrect function type. While testing FDK in Android P DP3 x86 64bit emulator we observed a runtime error. The function parameter of the callback didn't use a typeless pointer. Following patch contains a revised sbr decoder callback function with explicit data type cast to be inline with all other callbacks in FDK. Change-Id: Id224de22beaf2eb9631babd838c4c3ceae0a801e Fix huffman decoder escape sequence length limitation. Change-Id: Ib05cc2c065739c27b9720a24f90d0ce4d15bf601 Prevent overflow in MPEG-D DRC _setSelectionDataInfo(). Change-Id: I3b90ef7a5168e20766a2574d57d81bb39d2a5fb9 Add sanity check for allowed LPD sampling rate. Change-Id: I0702024adc07ed463db795dd48f4efd3de1d7896 Always check whether given channel config is supported. Change-Id: I169161dd31bc624f2cab6be2b4c6518946ed32ba Unsigned Integer Overflow in aacDecoder_DecodeFrame(). Change-Id: I617dd545f9ea0aca5a5e7d214bbc35f089bc355d Unsigned Integer Overflow in SpatialDecParseSpecificConfigHeader(). Change-Id: I5994a55f993835fa511ff61a337726b3e51aed5d Unsigned Integer Overflows in mpegSurroundDecoder_Parse(). Change-Id: I3714e88d7a9a866297bb2e93571804665a97773f Unsigned Integer Overflow in transportDec_AdjustEndOfAccessUnit(). Change-Id: Ie4924460d30ea4ef76917704ded809d04db78993 Unsigned Integer Overflow in transportDec_readHeader(). Change-Id: I0beedab38175fc57e5bd9eb5700a3850ef2bebf7 UBSAN overflow in FFT An overflow in the fft was observed for certain configurations. The root cause was in the scaling of the fft input data in dct_IV and dst_IV. The following patch revises the scaling in dct and removes the unused arm implementation. Change-Id: Idc9c44a9755b8151d5c7d8107696f43ac592413b --- libAACdec/src/aacdec_hcr.cpp | 82 ++-- libAACdec/src/aacdec_hcr_bit.cpp | 7 +- libAACdec/src/aacdec_hcr_bit.h | 3 +- libAACdec/src/aacdec_hcr_types.h | 2 +- libAACdec/src/aacdec_hcrs.cpp | 42 +- libAACdec/src/aacdecoder.cpp | 14 +- libAACdec/src/aacdecoder_lib.cpp | 21 +- libAACdec/src/block.cpp | 12 +- libAACdec/src/rvlc.cpp | 29 +- libAACdec/src/rvlc_info.h | 1 + libAACdec/src/rvlcbit.cpp | 6 +- libAACdec/src/rvlcbit.h | 4 +- libAACdec/src/usacdec_lpd.cpp | 3 +- libDRCdec/src/drcDec_selectionProcess.cpp | 34 +- libFDK/include/FDK_bitbuffer.h | 6 - libFDK/include/FDK_bitstream.h | 46 -- libFDK/src/FDK_bitbuffer.cpp | 29 -- libFDK/src/arm/dct_arm.cpp | 572 ---------------------- libFDK/src/dct.cpp | 74 +-- libMpegTPDec/src/tpdec_lib.cpp | 14 +- libSACdec/src/sac_bitdec.cpp | 4 +- libSACdec/src/sac_dec_lib.cpp | 8 +- 22 files changed, 186 insertions(+), 827 deletions(-) delete mode 100644 libFDK/src/arm/dct_arm.cpp diff --git a/libAACdec/src/aacdec_hcr.cpp b/libAACdec/src/aacdec_hcr.cpp index 84e05b0..6114756 100644 --- a/libAACdec/src/aacdec_hcr.cpp +++ b/libAACdec/src/aacdec_hcr.cpp @@ -134,17 +134,18 @@ static void DeriveNumberOfExtendedSortedSectionsInSets( USHORT *pNumExtendedSortedSectionsInSets, int numExtendedSortedSectionsInSetsIdx); -static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, INT quantSpecCoef, - INT *pLeftStartOfSegment, +static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT quantSpecCoef, INT *pLeftStartOfSegment, SCHAR *pRemainingBitsInSegment, int *pNumDecodedBits); -static int DecodePCW_Sign(HANDLE_FDK_BITSTREAM bs, UINT codebookDim, - const SCHAR *pQuantVal, FIXP_DBL *pQuantSpecCoef, - int *quantSpecCoefIdx, INT *pLeftStartOfSegment, +static int DecodePCW_Sign(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + UINT codebookDim, const SCHAR *pQuantVal, + FIXP_DBL *pQuantSpecCoef, int *quantSpecCoefIdx, + INT *pLeftStartOfSegment, SCHAR *pRemainingBitsInSegment, int *pNumDecodedBits); -static const SCHAR *DecodePCW_Body(HANDLE_FDK_BITSTREAM bs, +static const SCHAR *DecodePCW_Body(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, const UINT *pCurrentTree, const SCHAR *pQuantValBase, INT *pLeftStartOfSegment, @@ -291,7 +292,7 @@ UINT HcrInit(H_HCR_INFO pHcr, CAacDecoderChannelInfo *pAacDecoderChannelInfo, SPEC_LONG(pAacDecoderChannelInfo->pSpectralCoefficient); FDKsyncCache(bs); - pHcr->decInOut.bitstreamIndex = FDKgetBitCnt(bs); + pHcr->decInOut.bitstreamAnchor = (INT)FDKgetValidBits(bs); if (!IsLongBlock(&pAacDecoderChannelInfo->icsInfo)) /* short block */ { @@ -436,7 +437,7 @@ UINT HcrDecoder(H_HCR_INFO pHcr, CAacDecoderChannelInfo *pAacDecoderChannelInfo, int pTmp5; INT bitCntOffst; - INT saveBitCnt = FDKgetBitCnt(bs); /* save bitstream position */ + INT saveBitCnt = (INT)FDKgetValidBits(bs); /* save bitstream position */ HcrCalcNumCodeword(pHcr); @@ -487,7 +488,7 @@ UINT HcrDecoder(H_HCR_INFO pHcr, CAacDecoderChannelInfo *pAacDecoderChannelInfo, pSamplingRateInfo); /* restore bitstream position */ - bitCntOffst = saveBitCnt - FDKgetBitCnt(bs); + bitCntOffst = (INT)FDKgetValidBits(bs) - saveBitCnt; if (bitCntOffst) { FDKpushBiDirectional(bs, bitCntOffst); } @@ -815,7 +816,6 @@ static void HcrPrepareSegmentationGrid(H_HCR_INFO pHcr) { INT *pLeftStartOfSegment = pHcr->segmentInfo.pLeftStartOfSegment; INT *pRightStartOfSegment = pHcr->segmentInfo.pRightStartOfSegment; SCHAR *pRemainingBitsInSegment = pHcr->segmentInfo.pRemainingBitsInSegment; - INT bitstreamIndex = pHcr->decInOut.bitstreamIndex; const UCHAR *pMaxCwLength = aMaxCwLen; for (i = numSortedSection; i != 0; i--) { @@ -825,7 +825,7 @@ static void HcrPrepareSegmentationGrid(H_HCR_INFO pHcr) { for (j = *pNumSortedCodewordInSection; j != 0; j--) { /* width allows a new segment */ - intermediateResult = bitstreamIndex + segmentStart; + intermediateResult = segmentStart; if ((segmentStart + segmentWidth) <= lengthOfReorderedSpectralData) { /* store segment start, segment length and increment the number of * segments */ @@ -841,12 +841,11 @@ static void HcrPrepareSegmentationGrid(H_HCR_INFO pHcr) { pLeftStartOfSegment--; pRightStartOfSegment--; pRemainingBitsInSegment--; - segmentStart = *pLeftStartOfSegment - bitstreamIndex; + segmentStart = *pLeftStartOfSegment; lastSegmentWidth = lengthOfReorderedSpectralData - segmentStart; *pRemainingBitsInSegment = lastSegmentWidth; - *pRightStartOfSegment = - bitstreamIndex + segmentStart + lastSegmentWidth - 1; + *pRightStartOfSegment = segmentStart + lastSegmentWidth - 1; endFlag = 1; break; } @@ -1071,9 +1070,9 @@ static void DecodePCWs(HANDLE_FDK_BITSTREAM bs, H_HCR_INFO pHcr) { numDecodedBits = 0; /* decode PCW_BODY */ - pQuantVal = - DecodePCW_Body(bs, pCurrentTree, pQuantValBase, pLeftStartOfSegment, - pRemainingBitsInSegment, &numDecodedBits); + pQuantVal = DecodePCW_Body( + bs, pHcr->decInOut.bitstreamAnchor, pCurrentTree, pQuantValBase, + pLeftStartOfSegment, pRemainingBitsInSegment, &numDecodedBits); /* result is written out here because NO sign bits follow the body */ for (i = dimension; i != 0; i--) { @@ -1115,14 +1114,14 @@ static void DecodePCWs(HANDLE_FDK_BITSTREAM bs, H_HCR_INFO pHcr) { int err; numDecodedBits = 0; - pQuantVal = - DecodePCW_Body(bs, pCurrentTree, pQuantValBase, pLeftStartOfSegment, - pRemainingBitsInSegment, &numDecodedBits); + pQuantVal = DecodePCW_Body( + bs, pHcr->decInOut.bitstreamAnchor, pCurrentTree, pQuantValBase, + pLeftStartOfSegment, pRemainingBitsInSegment, &numDecodedBits); err = DecodePCW_Sign( - bs, dimension, pQuantVal, pQuantizedSpectralCoefficients, - &quantizedSpectralCoefficientsIdx, pLeftStartOfSegment, - pRemainingBitsInSegment, &numDecodedBits); + bs, pHcr->decInOut.bitstreamAnchor, dimension, pQuantVal, + pQuantizedSpectralCoefficients, &quantizedSpectralCoefficientsIdx, + pLeftStartOfSegment, pRemainingBitsInSegment, &numDecodedBits); if (err != 0) { return; } @@ -1157,14 +1156,14 @@ static void DecodePCWs(HANDLE_FDK_BITSTREAM bs, H_HCR_INFO pHcr) { numDecodedBits = 0; /* decode PCW_BODY */ - pQuantVal = - DecodePCW_Body(bs, pCurrentTree, pQuantValBase, pLeftStartOfSegment, - pRemainingBitsInSegment, &numDecodedBits); + pQuantVal = DecodePCW_Body( + bs, pHcr->decInOut.bitstreamAnchor, pCurrentTree, pQuantValBase, + pLeftStartOfSegment, pRemainingBitsInSegment, &numDecodedBits); err = DecodePCW_Sign( - bs, dimension, pQuantVal, pQuantizedSpectralCoefficients, - &quantizedSpectralCoefficientsIdx, pLeftStartOfSegment, - pRemainingBitsInSegment, &numDecodedBits); + bs, pHcr->decInOut.bitstreamAnchor, dimension, pQuantVal, + pQuantizedSpectralCoefficients, &quantizedSpectralCoefficientsIdx, + pLeftStartOfSegment, pRemainingBitsInSegment, &numDecodedBits); if (err != 0) { return; } @@ -1177,7 +1176,7 @@ static void DecodePCWs(HANDLE_FDK_BITSTREAM bs, H_HCR_INFO pHcr) { (FIXP_DBL)ESCAPE_VALUE) { pQuantizedSpectralCoefficients[quantizedSpectralCoefficientsIdx] = (FIXP_DBL)DecodeEscapeSequence( - bs, + bs, pHcr->decInOut.bitstreamAnchor, pQuantizedSpectralCoefficients [quantizedSpectralCoefficientsIdx], pLeftStartOfSegment, pRemainingBitsInSegment, @@ -1193,7 +1192,7 @@ static void DecodePCWs(HANDLE_FDK_BITSTREAM bs, H_HCR_INFO pHcr) { (FIXP_DBL)ESCAPE_VALUE) { pQuantizedSpectralCoefficients[quantizedSpectralCoefficientsIdx] = (FIXP_DBL)DecodeEscapeSequence( - bs, + bs, pHcr->decInOut.bitstreamAnchor, pQuantizedSpectralCoefficients [quantizedSpectralCoefficientsIdx], pLeftStartOfSegment, pRemainingBitsInSegment, @@ -1331,7 +1330,7 @@ void CarryBitToBranchValue(UCHAR carryBit, UINT treeNode, UINT *branchValue, spectral coefficients -------------------------------------------------------------------------------------------- */ -static const SCHAR *DecodePCW_Body(HANDLE_FDK_BITSTREAM bs, +static const SCHAR *DecodePCW_Body(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, const UINT *pCurrentTree, const SCHAR *pQuantValBase, INT *pLeftStartOfSegment, @@ -1349,7 +1348,7 @@ static const SCHAR *DecodePCW_Body(HANDLE_FDK_BITSTREAM bs, /* decode whole PCW-codeword-body */ while (1) { - carryBit = HcrGetABitFromBitstream(bs, pLeftStartOfSegment, + carryBit = HcrGetABitFromBitstream(bs, bsAnchor, pLeftStartOfSegment, pLeftStartOfSegment, /* dummy */ FROM_LEFT_TO_RIGHT); *pRemainingBitsInSegment -= 1; @@ -1384,8 +1383,8 @@ value == 16, a escapeSequence is decoded in two steps: -------------------------------------------------------------------------------------------- */ -static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, INT quantSpecCoef, - INT *pLeftStartOfSegment, +static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT quantSpecCoef, INT *pLeftStartOfSegment, SCHAR *pRemainingBitsInSegment, int *pNumDecodedBits) { UINT i; @@ -1396,7 +1395,7 @@ static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, INT quantSpecCoef, /* decode escape prefix */ while (1) { - carryBit = HcrGetABitFromBitstream(bs, pLeftStartOfSegment, + carryBit = HcrGetABitFromBitstream(bs, bsAnchor, pLeftStartOfSegment, pLeftStartOfSegment, /* dummy */ FROM_LEFT_TO_RIGHT); *pRemainingBitsInSegment -= 1; @@ -1412,7 +1411,7 @@ static INT DecodeEscapeSequence(HANDLE_FDK_BITSTREAM bs, INT quantSpecCoef, /* decode escape word */ for (i = escapeOnesCounter; i != 0; i--) { - carryBit = HcrGetABitFromBitstream(bs, pLeftStartOfSegment, + carryBit = HcrGetABitFromBitstream(bs, bsAnchor, pLeftStartOfSegment, pLeftStartOfSegment, /* dummy */ FROM_LEFT_TO_RIGHT); *pRemainingBitsInSegment -= 1; @@ -1441,9 +1440,10 @@ the last of eight function of HCR) line) -------------------------------------------------------------------------------------------- */ -static int DecodePCW_Sign(HANDLE_FDK_BITSTREAM bs, UINT codebookDim, - const SCHAR *pQuantVal, FIXP_DBL *pQuantSpecCoef, - int *quantSpecCoefIdx, INT *pLeftStartOfSegment, +static int DecodePCW_Sign(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + UINT codebookDim, const SCHAR *pQuantVal, + FIXP_DBL *pQuantSpecCoef, int *quantSpecCoefIdx, + INT *pLeftStartOfSegment, SCHAR *pRemainingBitsInSegment, int *pNumDecodedBits) { UINT i; @@ -1453,7 +1453,7 @@ static int DecodePCW_Sign(HANDLE_FDK_BITSTREAM bs, UINT codebookDim, for (i = codebookDim; i != 0; i--) { quantSpecCoef = *pQuantVal++; if (quantSpecCoef != 0) { - carryBit = HcrGetABitFromBitstream(bs, pLeftStartOfSegment, + carryBit = HcrGetABitFromBitstream(bs, bsAnchor, pLeftStartOfSegment, pLeftStartOfSegment, /* dummy */ FROM_LEFT_TO_RIGHT); *pRemainingBitsInSegment -= 1; diff --git a/libAACdec/src/aacdec_hcr_bit.cpp b/libAACdec/src/aacdec_hcr_bit.cpp index a53ef16..0198659 100644 --- a/libAACdec/src/aacdec_hcr_bit.cpp +++ b/libAACdec/src/aacdec_hcr_bit.cpp @@ -132,13 +132,14 @@ read direction. It is called very often, therefore it makes sense to inline it return: - bit from bitstream -------------------------------------------------------------------------------------------- */ -UINT HcrGetABitFromBitstream(HANDLE_FDK_BITSTREAM bs, INT *pLeftStartOfSegment, +UINT HcrGetABitFromBitstream(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT *pLeftStartOfSegment, INT *pRightStartOfSegment, UCHAR readDirection) { UINT bit; INT readBitOffset; if (readDirection == FROM_LEFT_TO_RIGHT) { - readBitOffset = *pLeftStartOfSegment - FDKgetBitCnt(bs); + readBitOffset = (INT)FDKgetValidBits(bs) - bsAnchor + *pLeftStartOfSegment; if (readBitOffset) { FDKpushBiDirectional(bs, readBitOffset); } @@ -147,7 +148,7 @@ UINT HcrGetABitFromBitstream(HANDLE_FDK_BITSTREAM bs, INT *pLeftStartOfSegment, *pLeftStartOfSegment += 1; } else { - readBitOffset = *pRightStartOfSegment - FDKgetBitCnt(bs); + readBitOffset = (INT)FDKgetValidBits(bs) - bsAnchor + *pRightStartOfSegment; if (readBitOffset) { FDKpushBiDirectional(bs, readBitOffset); } diff --git a/libAACdec/src/aacdec_hcr_bit.h b/libAACdec/src/aacdec_hcr_bit.h index 7a57c8c..77242ac 100644 --- a/libAACdec/src/aacdec_hcr_bit.h +++ b/libAACdec/src/aacdec_hcr_bit.h @@ -107,7 +107,8 @@ amm-info@iis.fraunhofer.de UCHAR ToggleReadDirection(UCHAR readDirection); -UINT HcrGetABitFromBitstream(HANDLE_FDK_BITSTREAM bs, INT *pLeftStartOfSegment, +UINT HcrGetABitFromBitstream(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT *pLeftStartOfSegment, INT *pRightStartOfSegment, UCHAR readDirection); #endif /* AACDEC_HCR_BIT_H */ diff --git a/libAACdec/src/aacdec_hcr_types.h b/libAACdec/src/aacdec_hcr_types.h index d550bc2..1cc3cb0 100644 --- a/libAACdec/src/aacdec_hcr_types.h +++ b/libAACdec/src/aacdec_hcr_types.h @@ -350,7 +350,7 @@ typedef struct { SHORT lengthOfReorderedSpectralData; SHORT numSection; SHORT *pNumLineInSect; - INT bitstreamIndex; + INT bitstreamAnchor; SCHAR lengthOfLongestCodeword; UCHAR *pCodebook; } HCR_INPUT_OUTPUT; diff --git a/libAACdec/src/aacdec_hcrs.cpp b/libAACdec/src/aacdec_hcrs.cpp index e2b7cd8..1d5aa27 100644 --- a/libAACdec/src/aacdec_hcrs.cpp +++ b/libAACdec/src/aacdec_hcrs.cpp @@ -615,9 +615,9 @@ UINT Hcr_State_BODY_ONLY(HANDLE_FDK_BITSTREAM bs, void *ptr) { for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); CarryBitToBranchValue(carryBit, /* make a step in decoding tree */ treeNode, &branchValue, &branchNode); @@ -749,9 +749,9 @@ UINT Hcr_State_BODY_SIGN__BODY(HANDLE_FDK_BITSTREAM bs, void *ptr) { for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); CarryBitToBranchValue(carryBit, /* make a step in decoding tree */ treeNode, &branchValue, &branchNode); @@ -884,9 +884,9 @@ UINT Hcr_State_BODY_SIGN__SIGN(HANDLE_FDK_BITSTREAM bs, void *ptr) { /* loop for sign bit decoding */ for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); cntSign -= 1; /* decrement sign counter because one sign bit has been read */ @@ -997,9 +997,9 @@ UINT Hcr_State_BODY_SIGN_ESC__BODY(HANDLE_FDK_BITSTREAM bs, void *ptr) { for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); /* make a step in tree */ CarryBitToBranchValue(carryBit, treeNode, &branchValue, &branchNode); @@ -1159,9 +1159,9 @@ UINT Hcr_State_BODY_SIGN_ESC__SIGN(HANDLE_FDK_BITSTREAM bs, void *ptr) { /* loop for sign bit decoding */ for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); /* decrement sign counter because one sign bit has been read */ cntSign -= 1; @@ -1314,9 +1314,9 @@ UINT Hcr_State_BODY_SIGN_ESC__ESC_PREFIX(HANDLE_FDK_BITSTREAM bs, void *ptr) { /* decode escape prefix */ for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); /* count ones and store sum in escapePrefixUp */ if (carryBit == 1) { @@ -1435,9 +1435,9 @@ UINT Hcr_State_BODY_SIGN_ESC__ESC_WORD(HANDLE_FDK_BITSTREAM bs, void *ptr) { /* decode escape word */ for (; pRemainingBitsInSegment[segmentOffset] > 0; pRemainingBitsInSegment[segmentOffset] -= 1) { - carryBit = HcrGetABitFromBitstream(bs, &pLeftStartOfSegment[segmentOffset], - &pRightStartOfSegment[segmentOffset], - readDirection); + carryBit = HcrGetABitFromBitstream( + bs, pHcr->decInOut.bitstreamAnchor, &pLeftStartOfSegment[segmentOffset], + &pRightStartOfSegment[segmentOffset], readDirection); /* build escape word */ escapeWord <<= diff --git a/libAACdec/src/aacdecoder.cpp b/libAACdec/src/aacdecoder.cpp index b8b1327..2a228c8 100644 --- a/libAACdec/src/aacdecoder.cpp +++ b/libAACdec/src/aacdecoder.cpp @@ -1630,14 +1630,14 @@ CAacDecoder_Init(HANDLE_AACDECODER self, const CSAudioSpecificConfig *asc, aacChannelsOffset = 0; aacChannelsOffsetIdx = 0; elementOffset = 0; + if ((ascChannels <= 0) || + (asc->m_channelConfiguration > AACDEC_MAX_CH_CONF)) { + return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; + } + if ((ascChannels + aacChannelsOffsetIdx) > ((8) * 2)) { + return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; + } if (configMode & AC_CM_ALLOC_MEM) { - if ((ascChannels <= 0) || - (asc->m_channelConfiguration > AACDEC_MAX_CH_CONF)) { - return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; - } - if ((ascChannels + aacChannelsOffsetIdx) > ((8) * 2)) { - return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; - } if ((ascChannels + aacChannelsOffset) > (8)) { return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; } diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp index d98cf5a..b528ef1 100644 --- a/libAACdec/src/aacdecoder_lib.cpp +++ b/libAACdec/src/aacdecoder_lib.cpp @@ -368,6 +368,23 @@ static INT aacDecoder_CtrlCFGChangeCallback( return errTp; } +static INT aacDecoder_SbrCallback( + void *handle, HANDLE_FDK_BITSTREAM hBs, const INT sampleRateIn, + const INT sampleRateOut, const INT samplesPerFrame, + const AUDIO_OBJECT_TYPE coreCodec, const MP4_ELEMENT_ID elementID, + const INT elementIndex, const UCHAR harmonicSBR, + const UCHAR stereoConfigIndex, const UCHAR configMode, UCHAR *configChanged, + const INT downscaleFactor) { + HANDLE_SBRDECODER self = (HANDLE_SBRDECODER)handle; + + INT errTp = sbrDecoder_Header(self, hBs, sampleRateIn, sampleRateOut, + samplesPerFrame, coreCodec, elementID, + elementIndex, harmonicSBR, stereoConfigIndex, + configMode, configChanged, downscaleFactor); + + return errTp; +} + static INT aacDecoder_SscCallback(void *handle, HANDLE_FDK_BITSTREAM hBs, const AUDIO_OBJECT_TYPE coreCodec, const INT samplingRate, @@ -959,7 +976,7 @@ LINKSPEC_CPP HANDLE_AACDECODER aacDecoder_Open(TRANSPORT_TYPE transportFmt, goto bail; } aacDec->qmfModeUser = NOT_DEFINED; - transportDec_RegisterSbrCallback(aacDec->hInput, (cbSbr_t)sbrDecoder_Header, + transportDec_RegisterSbrCallback(aacDec->hInput, aacDecoder_SbrCallback, (void *)aacDec->hSbrDecoder); if (mpegSurroundDecoder_Open( @@ -1865,7 +1882,7 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern, } /* USAC DASH IPF flushing possible end */ if (accessUnit < numPrerollAU) { - FDKpushBack(hBsAu, auStartAnchor - FDKgetValidBits(hBsAu)); + FDKpushBack(hBsAu, auStartAnchor - (INT)FDKgetValidBits(hBsAu)); } else { if ((self->buildUpStatus == AACDEC_RSV60_BUILD_UP_ON) || (self->buildUpStatus == AACDEC_RSV60_BUILD_UP_ON_IN_BAND) || diff --git a/libAACdec/src/block.cpp b/libAACdec/src/block.cpp index 7d2a4b9..b3d09a6 100644 --- a/libAACdec/src/block.cpp +++ b/libAACdec/src/block.cpp @@ -127,9 +127,11 @@ amm-info@iis.fraunhofer.de The function reads the escape sequence from the bitstream, if the absolute value of the quantized coefficient has the value 16. - A limitation is implemented to maximal 31 bits to prevent endless loops. - If it strikes, MAX_QUANTIZED_VALUE + 1 is returned, independent of the sign of - parameter q. + A limitation is implemented to maximal 21 bits according to + ISO/IEC 14496-3:2009(E) 4.6.3.3. + This limits the escape prefix to a maximum of eight 1's. + If more than eight 1's are read, MAX_QUANTIZED_VALUE + 1 is + returned, independent of the sign of parameter q. \return quantized coefficient */ @@ -139,11 +141,11 @@ LONG CBlock_GetEscape(HANDLE_FDK_BITSTREAM bs, /*!< pointer to bitstream */ if (fAbs(q) != 16) return (q); LONG i, off; - for (i = 4; i < 32; i++) { + for (i = 4; i < 13; i++) { if (FDKreadBit(bs) == 0) break; } - if (i == 32) return (MAX_QUANTIZED_VALUE + 1); + if (i == 13) return (MAX_QUANTIZED_VALUE + 1); off = FDKreadBits(bs, i); i = off + (1 << i); diff --git a/libAACdec/src/rvlc.cpp b/libAACdec/src/rvlc.cpp index 92f9f02..b7a9be1 100644 --- a/libAACdec/src/rvlc.cpp +++ b/libAACdec/src/rvlc.cpp @@ -168,13 +168,14 @@ static void rvlcInit(CErRvlcInfo *pRvlc, /* set base bitstream ptr to the RVL-coded part (start of RVLC data (ESC 2)) */ FDKsyncCache(bs); + pRvlc->bsAnchor = (INT)FDKgetValidBits(bs); - pRvlc->bitstreamIndexRvlFwd = FDKgetBitCnt( - bs); /* first bit within RVL coded block as start address for forward - decoding */ - pRvlc->bitstreamIndexRvlBwd = FDKgetBitCnt(bs) + pRvlc->length_of_rvlc_sf - - 1; /* last bit within RVL coded block as start - address for backward decoding */ + pRvlc->bitstreamIndexRvlFwd = + 0; /* first bit within RVL coded block as start address for forward + decoding */ + pRvlc->bitstreamIndexRvlBwd = + pRvlc->length_of_rvlc_sf - 1; /* last bit within RVL coded block as start + address for backward decoding */ /* skip RVLC-bitstream-part -- pointing now to escapes (if present) or to TNS * data (if present) */ @@ -183,7 +184,7 @@ static void rvlcInit(CErRvlcInfo *pRvlc, if (pRvlc->sf_escapes_present != 0) { /* locate internal bitstream ptr at escapes (which is the second part) */ FDKsyncCache(bs); - pRvlc->bitstreamIndexEsc = FDKgetBitCnt(bs); + pRvlc->bitstreamIndexEsc = pRvlc->bsAnchor - (INT)FDKgetValidBits(bs); /* skip escapeRVLC-bitstream-part -- pointing to TNS data (if present) to * make decoder continue */ @@ -259,8 +260,9 @@ static SCHAR rvlcDecodeEscapeWord(CErRvlcInfo *pRvlc, HANDLE_FDK_BITSTREAM bs) { treeNode = *pEscTree; /* init at starting node */ for (i = MAX_LEN_RVLC_ESCAPE_WORD - 1; i >= 0; i--) { - carryBit = rvlcReadBitFromBitstream(bs, /* get next bit */ - pBitstreamIndexEsc, FWD); + carryBit = + rvlcReadBitFromBitstream(bs, /* get next bit */ + pRvlc->bsAnchor, pBitstreamIndexEsc, FWD); CarryBitToBranchValue(carryBit, /* huffman decoding, do a single step in huffman decoding tree */ @@ -370,8 +372,9 @@ SCHAR decodeRVLCodeword(HANDLE_FDK_BITSTREAM bs, CErRvlcInfo *pRvlc) { UINT treeNode = *pRvlCodeTree; for (i = MAX_LEN_RVLC_CODE_WORD - 1; i >= 0; i--) { - carryBit = rvlcReadBitFromBitstream(bs, /* get next bit */ - pBitstrIndxRvl, direction); + carryBit = + rvlcReadBitFromBitstream(bs, /* get next bit */ + pRvlc->bsAnchor, pBitstrIndxRvl, direction); CarryBitToBranchValue(carryBit, /* huffman decoding, do a single step in huffman decoding tree */ @@ -1140,7 +1143,7 @@ void CRvlc_Decode(CAacDecoderChannelInfo *pAacDecoderChannelInfo, rvlcInit(pRvlc, pAacDecoderChannelInfo, bs); /* save bitstream position */ - saveBitCnt = FDKgetBitCnt(bs); + saveBitCnt = (INT)FDKgetValidBits(bs); if (pRvlc->sf_escapes_present) rvlcDecodeEscapes( @@ -1155,7 +1158,7 @@ void CRvlc_Decode(CAacDecoderChannelInfo *pAacDecoderChannelInfo, pAacDecoderChannelInfo->data.aac.PnsData.PnsActive = pRvlc->noise_used; /* restore bitstream position */ - bitCntOffst = saveBitCnt - FDKgetBitCnt(bs); + bitCntOffst = (INT)FDKgetValidBits(bs) - saveBitCnt; if (bitCntOffst) { FDKpushBiDirectional(bs, bitCntOffst); } diff --git a/libAACdec/src/rvlc_info.h b/libAACdec/src/rvlc_info.h index fc9c19d..e7b3b99 100644 --- a/libAACdec/src/rvlc_info.h +++ b/libAACdec/src/rvlc_info.h @@ -164,6 +164,7 @@ typedef struct { UCHAR direction; /* bitstream indices */ + INT bsAnchor; /* hcr bit buffer reference index */ INT bitstreamIndexRvlFwd; /* base address of RVL-coded-scalefactor data (ESC 2) for forward decoding */ INT bitstreamIndexRvlBwd; /* base address of RVL-coded-scalefactor data (ESC diff --git a/libAACdec/src/rvlcbit.cpp b/libAACdec/src/rvlcbit.cpp index c06cf96..b0c4596 100644 --- a/libAACdec/src/rvlcbit.cpp +++ b/libAACdec/src/rvlcbit.cpp @@ -123,10 +123,10 @@ read direction. It is called very often, therefore it makes sense to inline it -------------------------------------------------------------------------------------------- */ -UCHAR rvlcReadBitFromBitstream(HANDLE_FDK_BITSTREAM bs, INT *pPosition, - UCHAR readDirection) { +UCHAR rvlcReadBitFromBitstream(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT *pPosition, UCHAR readDirection) { UINT bit; - INT readBitOffset = *pPosition - FDKgetBitCnt(bs); + INT readBitOffset = (INT)FDKgetValidBits(bs) - bsAnchor + *pPosition; if (readBitOffset) { FDKpushBiDirectional(bs, readBitOffset); diff --git a/libAACdec/src/rvlcbit.h b/libAACdec/src/rvlcbit.h index 5c6a3f1..2578453 100644 --- a/libAACdec/src/rvlcbit.h +++ b/libAACdec/src/rvlcbit.h @@ -105,7 +105,7 @@ amm-info@iis.fraunhofer.de #include "rvlc.h" -UCHAR rvlcReadBitFromBitstream(HANDLE_FDK_BITSTREAM bs, INT *pPosition, - UCHAR readDirection); +UCHAR rvlcReadBitFromBitstream(HANDLE_FDK_BITSTREAM bs, const INT bsAnchor, + INT *pPosition, UCHAR readDirection); #endif /* RVLCBIT_H */ diff --git a/libAACdec/src/usacdec_lpd.cpp b/libAACdec/src/usacdec_lpd.cpp index 22069a6..f53e39f 100644 --- a/libAACdec/src/usacdec_lpd.cpp +++ b/libAACdec/src/usacdec_lpd.cpp @@ -1221,8 +1221,7 @@ AAC_DECODER_ERROR CLpdChannelStream_Read( (INT)(samplingRate * PIT_MIN_12k8 + (FSCALE_DENOM / 2)) / FSCALE_DENOM - (INT)PIT_MIN_12k8; - if (pSamplingRateInfo->samplingRate > - FAC_FSCALE_MAX /* maximum allowed core sampling frequency */) { + if ((samplingRate < 6000) || (samplingRate > 24000)) { error = AAC_DEC_PARSE_ERROR; goto bail; } diff --git a/libDRCdec/src/drcDec_selectionProcess.cpp b/libDRCdec/src/drcDec_selectionProcess.cpp index 54b731d..9228197 100644 --- a/libDRCdec/src/drcDec_selectionProcess.cpp +++ b/libDRCdec/src/drcDec_selectionProcess.cpp @@ -1006,15 +1006,23 @@ static DRCDEC_SELECTION_PROCESS_RETURN _preSelectionRequirement7( return DRCDEC_SELECTION_PROCESS_NO_ERROR; } -static void _setSelectionDataInfo(DRCDEC_SELECTION_DATA* pData, - FIXP_DBL loudness, - FIXP_DBL loudnessNormalizationGainDb, - FIXP_DBL loudnessNormalizationGainDbMax, - FIXP_DBL loudnessDeviationMax, - FIXP_DBL signalPeakLevel, - FIXP_DBL outputPeakLevelMax, - int applyAdjustment) { - FIXP_DBL adjustment = 0; +static void _setSelectionDataInfo( + DRCDEC_SELECTION_DATA* pData, FIXP_DBL loudness, /* e = 7 */ + FIXP_DBL loudnessNormalizationGainDb, /* e = 7 */ + FIXP_DBL loudnessNormalizationGainDbMax, /* e = 7 */ + FIXP_DBL loudnessDeviationMax, /* e = 7 */ + FIXP_DBL signalPeakLevel, /* e = 7 */ + FIXP_DBL outputPeakLevelMax, /* e = 7 */ + int applyAdjustment) { + FIXP_DBL adjustment = 0; /* e = 8 */ + + /* use e = 8 for all function parameters to prevent overflow */ + loudness >>= 1; + loudnessNormalizationGainDb >>= 1; + loudnessNormalizationGainDbMax >>= 1; + loudnessDeviationMax >>= 1; + signalPeakLevel >>= 1; + outputPeakLevelMax >>= 1; if (applyAdjustment) { adjustment = @@ -1028,6 +1036,14 @@ static void _setSelectionDataInfo(DRCDEC_SELECTION_DATA* pData, pData->outputLoudness = loudness + pData->loudnessNormalizationGainDbAdjusted; pData->outputPeakLevel = signalPeakLevel + pData->loudnessNormalizationGainDbAdjusted; + + /* shift back to e = 7 using saturation */ + pData->loudnessNormalizationGainDbAdjusted = SATURATE_LEFT_SHIFT( + pData->loudnessNormalizationGainDbAdjusted, 1, DFRACT_BITS); + pData->outputLoudness = + SATURATE_LEFT_SHIFT(pData->outputLoudness, 1, DFRACT_BITS); + pData->outputPeakLevel = + SATURATE_LEFT_SHIFT(pData->outputPeakLevel, 1, DFRACT_BITS); } static int _targetLoudnessInRange( diff --git a/libFDK/include/FDK_bitbuffer.h b/libFDK/include/FDK_bitbuffer.h index ed0b2f6..19a24b3 100644 --- a/libFDK/include/FDK_bitbuffer.h +++ b/libFDK/include/FDK_bitbuffer.h @@ -113,7 +113,6 @@ typedef struct { UINT ValidBits; UINT ReadOffset; UINT WriteOffset; - UINT BitCnt; UINT BitNdx; UCHAR *Buffer; @@ -159,15 +158,10 @@ void FDK_pushBack(HANDLE_FDK_BITBUF hBitBuffer, const UINT numberOfBits, void FDK_pushForward(HANDLE_FDK_BITBUF hBitBuffer, const UINT numberOfBits, UCHAR config); -void FDK_byteAlign(HANDLE_FDK_BITBUF hBitBuffer, UCHAR config); - UINT FDK_getValidBits(HANDLE_FDK_BITBUF hBitBuffer); INT FDK_getFreeBits(HANDLE_FDK_BITBUF hBitBuffer); -void FDK_setBitCnt(HANDLE_FDK_BITBUF hBitBuffer, const UINT value); -INT FDK_getBitCnt(HANDLE_FDK_BITBUF hBitBuffer); - void FDK_Feed(HANDLE_FDK_BITBUF hBitBuffer, const UCHAR inputBuffer[], const UINT bufferSize, UINT *bytesValid); diff --git a/libFDK/include/FDK_bitstream.h b/libFDK/include/FDK_bitstream.h index 49eeeaf..f799026 100644 --- a/libFDK/include/FDK_bitstream.h +++ b/libFDK/include/FDK_bitstream.h @@ -480,21 +480,6 @@ FDK_INLINE void FDKsyncCacheBwd(HANDLE_FDK_BITSTREAM hBitStream) { hBitStream->CacheWord = 0; } -/** - * \brief Byte Alignment Function. - * This function performs the byte_alignment() syntactic function on the - * input stream, i.e. some bits will be discarded/padded so that the next bits - * to be read/written will be aligned on a byte boundary with respect to - * the bit position 0. - * - * \param hBitStream HANDLE_FDK_BITSTREAM handle - * \return void - */ -FDK_INLINE void FDKbyteAlign(HANDLE_FDK_BITSTREAM hBitStream) { - FDKsyncCache(hBitStream); - FDK_byteAlign(&hBitStream->hBitBuf, (UCHAR)hBitStream->ConfigCache); -} - /** * \brief Byte Alignment Function with anchor * This function performs the byte_alignment() syntactic function on the @@ -603,37 +588,6 @@ FDK_INLINE INT FDKgetFreeBits(HANDLE_FDK_BITSTREAM hBitStream) { return FDK_getFreeBits(&hBitStream->hBitBuf); } -/** - * \brief reset bitcounter in bitBuffer to zero. - * \param hBitStream HANDLE_FDK_BITSTREAM handle - * \return void - */ -FDK_INLINE void FDKresetBitCnt(HANDLE_FDK_BITSTREAM hBitStream) { - FDKsyncCache(hBitStream); - FDK_setBitCnt(&hBitStream->hBitBuf, 0); -} - -/** - * \brief set bitcoutner in bitBuffer to given value. - * \param hBitStream HANDLE_FDK_BITSTREAM handle - * \param value new value to be assigned to the bit counter - * \return void - */ -FDK_INLINE void FDKsetBitCnt(HANDLE_FDK_BITSTREAM hBitStream, UINT value) { - FDKsyncCache(hBitStream); - FDK_setBitCnt(&hBitStream->hBitBuf, value); -} - -/** - * \brief get bitcounter state from bitBuffer. - * \param hBitStream HANDLE_FDK_BITSTREAM handle - * \return current bit counter value - */ -FDK_INLINE INT FDKgetBitCnt(HANDLE_FDK_BITSTREAM hBitStream) { - FDKsyncCache(hBitStream); - return FDK_getBitCnt(&hBitStream->hBitBuf); -} - /** * \brief Fill the BitBuffer with a number of input bytes from external source. * The bytesValid variable returns the number of ramaining valid bytes in diff --git a/libFDK/src/FDK_bitbuffer.cpp b/libFDK/src/FDK_bitbuffer.cpp index a990c58..98905ea 100644 --- a/libFDK/src/FDK_bitbuffer.cpp +++ b/libFDK/src/FDK_bitbuffer.cpp @@ -128,7 +128,6 @@ void FDK_InitBitBuffer(HANDLE_FDK_BITBUF hBitBuf, UCHAR *pBuffer, UINT bufSize, hBitBuf->ValidBits = validBits; hBitBuf->ReadOffset = 0; hBitBuf->WriteOffset = 0; - hBitBuf->BitCnt = 0; hBitBuf->BitNdx = 0; hBitBuf->Buffer = pBuffer; @@ -151,7 +150,6 @@ void FDK_ResetBitBuffer(HANDLE_FDK_BITBUF hBitBuf) { hBitBuf->ValidBits = 0; hBitBuf->ReadOffset = 0; hBitBuf->WriteOffset = 0; - hBitBuf->BitCnt = 0; hBitBuf->BitNdx = 0; } @@ -161,7 +159,6 @@ INT FDK_get(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits) { UINT bitOffset = hBitBuf->BitNdx & 0x07; hBitBuf->BitNdx = (hBitBuf->BitNdx + numberOfBits) & (hBitBuf->bufBits - 1); - hBitBuf->BitCnt += numberOfBits; hBitBuf->ValidBits -= numberOfBits; UINT byteMask = hBitBuf->bufSize - 1; @@ -184,7 +181,6 @@ INT FDK_get(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits) { INT FDK_get32(HANDLE_FDK_BITBUF hBitBuf) { UINT BitNdx = hBitBuf->BitNdx + 32; hBitBuf->BitNdx = BitNdx & (hBitBuf->bufBits - 1); - hBitBuf->BitCnt += 32; hBitBuf->ValidBits = (UINT)((INT)hBitBuf->ValidBits - (INT)32); UINT byteOffset = (BitNdx - 1) >> 3; @@ -223,7 +219,6 @@ INT FDK_getBwd(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits) { int i; hBitBuf->BitNdx = (hBitBuf->BitNdx - numberOfBits) & (hBitBuf->bufBits - 1); - hBitBuf->BitCnt -= numberOfBits; hBitBuf->ValidBits += numberOfBits; UINT tx = hBitBuf->Buffer[(byteOffset - 3) & byteMask] << 24 | @@ -256,7 +251,6 @@ void FDK_put(HANDLE_FDK_BITBUF hBitBuf, UINT value, const UINT numberOfBits) { UINT bitOffset = hBitBuf->BitNdx & 0x7; hBitBuf->BitNdx = (hBitBuf->BitNdx + numberOfBits) & (hBitBuf->bufBits - 1); - hBitBuf->BitCnt += numberOfBits; hBitBuf->ValidBits += numberOfBits; UINT byteMask = hBitBuf->bufSize - 1; @@ -307,7 +301,6 @@ void FDK_putBwd(HANDLE_FDK_BITBUF hBitBuf, UINT value, int i; hBitBuf->BitNdx = (hBitBuf->BitNdx - numberOfBits) & (hBitBuf->bufBits - 1); - hBitBuf->BitCnt -= numberOfBits; hBitBuf->ValidBits -= numberOfBits; /* in place turn around */ @@ -344,7 +337,6 @@ void FDK_putBwd(HANDLE_FDK_BITBUF hBitBuf, UINT value, #ifndef FUNCTION_FDK_pushBack void FDK_pushBack(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits, UCHAR config) { - hBitBuf->BitCnt = (UINT)((INT)hBitBuf->BitCnt - (INT)numberOfBits); hBitBuf->ValidBits = (config == 0) ? (UINT)((INT)hBitBuf->ValidBits + (INT)numberOfBits) : ((UINT)((INT)hBitBuf->ValidBits - (INT)numberOfBits)); @@ -355,7 +347,6 @@ void FDK_pushBack(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits, void FDK_pushForward(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits, UCHAR config) { - hBitBuf->BitCnt = (UINT)((INT)hBitBuf->BitCnt + (INT)numberOfBits); hBitBuf->ValidBits = (config == 0) ? ((UINT)((INT)hBitBuf->ValidBits - (INT)numberOfBits)) : (UINT)((INT)hBitBuf->ValidBits + (INT)numberOfBits); @@ -363,19 +354,6 @@ void FDK_pushForward(HANDLE_FDK_BITBUF hBitBuf, const UINT numberOfBits, (UINT)((INT)hBitBuf->BitNdx + (INT)numberOfBits) & (hBitBuf->bufBits - 1); } -void FDK_byteAlign(HANDLE_FDK_BITBUF hBitBuf, UCHAR config) { - INT alignment = hBitBuf->BitCnt & 0x07; - - if (alignment) { - if (config == 0) - FDK_pushForward(hBitBuf, 8 - alignment, config); /* BS_READER */ - else - FDK_put(hBitBuf, 0, 8 - alignment); /* BS_WRITER */ - } - - hBitBuf->BitCnt = 0; -} - #ifndef FUNCTION_FDK_getValidBits UINT FDK_getValidBits(HANDLE_FDK_BITBUF hBitBuf) { return hBitBuf->ValidBits; } #endif /* #ifndef FUNCTION_FDK_getValidBits */ @@ -384,12 +362,6 @@ INT FDK_getFreeBits(HANDLE_FDK_BITBUF hBitBuf) { return (hBitBuf->bufBits - hBitBuf->ValidBits); } -void FDK_setBitCnt(HANDLE_FDK_BITBUF hBitBuf, const UINT value) { - hBitBuf->BitCnt = value; -} - -INT FDK_getBitCnt(HANDLE_FDK_BITBUF hBitBuf) { return hBitBuf->BitCnt; } - void FDK_Feed(HANDLE_FDK_BITBUF hBitBuf, const UCHAR *RESTRICT inputBuffer, const UINT bufferSize, UINT *bytesValid) { inputBuffer = &inputBuffer[bufferSize - *bytesValid]; @@ -438,7 +410,6 @@ void CopyAlignedBlock(HANDLE_FDK_BITBUF h_BitBufSrc, UCHAR *RESTRICT dstBuffer, h_BitBufSrc->BitNdx = (h_BitBufSrc->BitNdx + bToRead) & (h_BitBufSrc->bufBits - 1); - h_BitBufSrc->BitCnt += bToRead; h_BitBufSrc->ValidBits -= bToRead; } diff --git a/libFDK/src/arm/dct_arm.cpp b/libFDK/src/arm/dct_arm.cpp deleted file mode 100644 index dd66109..0000000 --- a/libFDK/src/arm/dct_arm.cpp +++ /dev/null @@ -1,572 +0,0 @@ -/* ----------------------------------------------------------------------------- -Software License for The Fraunhofer FDK AAC Codec Library for Android - -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten -Forschung e.V. All rights reserved. - - 1. INTRODUCTION -The Fraunhofer FDK AAC Codec Library for Android ("FDK AAC Codec") is software -that implements the MPEG Advanced Audio Coding ("AAC") encoding and decoding -scheme for digital audio. This FDK AAC Codec software is intended to be used on -a wide variety of Android devices. - -AAC's HE-AAC and HE-AAC v2 versions are regarded as today's most efficient -general perceptual audio codecs. AAC-ELD is considered the best-performing -full-bandwidth communications codec by independent studies and is widely -deployed. AAC has been standardized by ISO and IEC as part of the MPEG -specifications. - -Patent licenses for necessary patent claims for the FDK AAC Codec (including -those of Fraunhofer) may be obtained through Via Licensing -(www.vialicensing.com) or through the respective patent owners individually for -the purpose of encoding or decoding bit streams in products that are compliant -with the ISO/IEC MPEG audio standards. Please note that most manufacturers of -Android devices already license these patent claims through Via Licensing or -directly from the patent owners, and therefore FDK AAC Codec software may -already be covered under those patent licenses when it is used for those -licensed purposes only. - -Commercially-licensed AAC software libraries, including floating-point versions -with enhanced sound quality, are also available from Fraunhofer. Users are -encouraged to check the Fraunhofer website for additional applications -information and documentation. - -2. COPYRIGHT LICENSE - -Redistribution and use in source and binary forms, with or without modification, -are permitted without payment of copyright license fees provided that you -satisfy the following conditions: - -You must retain the complete text of this software license in redistributions of -the FDK AAC Codec or your modifications thereto in source code form. - -You must retain the complete text of this software license in the documentation -and/or other materials provided with redistributions of the FDK AAC Codec or -your modifications thereto in binary form. You must make available free of -charge copies of the complete source code of the FDK AAC Codec and your -modifications thereto to recipients of copies in binary form. - -The name of Fraunhofer may not be used to endorse or promote products derived -from this library without prior written permission. - -You may not charge copyright license fees for anyone to use, copy or distribute -the FDK AAC Codec software or your modifications thereto. - -Your modified versions of the FDK AAC Codec must carry prominent notices stating -that you changed the software and the date of any change. For modified versions -of the FDK AAC Codec, the term "Fraunhofer FDK AAC Codec Library for Android" -must be replaced by the term "Third-Party Modified Version of the Fraunhofer FDK -AAC Codec Library for Android." - -3. NO PATENT LICENSE - -NO EXPRESS OR IMPLIED LICENSES TO ANY PATENT CLAIMS, including without -limitation the patents of Fraunhofer, ARE GRANTED BY THIS SOFTWARE LICENSE. -Fraunhofer provides no warranty of patent non-infringement with respect to this -software. - -You may use this FDK AAC Codec software or modifications thereto only for -purposes that are authorized by appropriate patent licenses. - -4. DISCLAIMER - -This FDK AAC Codec software is provided by Fraunhofer on behalf of the copyright -holders and contributors "AS IS" and WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, -including but not limited to the implied warranties of merchantability and -fitness for a particular purpose. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -CONTRIBUTORS BE LIABLE for any direct, indirect, incidental, special, exemplary, -or consequential damages, including but not limited to procurement of substitute -goods or services; loss of use, data, or profits, or business interruption, -however caused and on any theory of liability, whether in contract, strict -liability, or tort (including negligence), arising in any way out of the use of -this software, even if advised of the possibility of such damage. - -5. CONTACT INFORMATION - -Fraunhofer Institute for Integrated Circuits IIS -Attention: Audio and Multimedia Departments - FDK AAC LL -Am Wolfsmantel 33 -91058 Erlangen, Germany - -www.iis.fraunhofer.de/amm -amm-info@iis.fraunhofer.de ------------------------------------------------------------------------------ */ - -/******************* Library for basic calculation routines ******************** - - Author(s): - - Description: - -*******************************************************************************/ - -#ifdef FUNCTION_dct_IV_func1 - -/* - Note: This assembler routine is here, because the ARM926 compiler does - not encode the inline assembler with optimal speed. - With this version, we save 2 cycles per loop iteration. -*/ - -__asm void dct_IV_func1(int i, const FIXP_SPK *twiddle, - FIXP_DBL *RESTRICT pDat_0, FIXP_DBL *RESTRICT pDat_1) { - /* Register map: - r0 i - r1 twiddle - r2 pDat_0 - r3 pDat_1 - r4 accu1 - r5 accu2 - r6 accu3 - r7 accu4 - r8 val_tw - r9 accuX - */ - PUSH{r4 - r9} - - /* 44 cycles for 2 iterations = 22 cycles/iteration */ - dct_IV_loop1_start - /* First iteration */ - LDR r8, - [r1], -# 4 // val_tw = *twiddle++; - LDR r5, - [ r2, #0 ] // accu2 = pDat_0[0] - LDR r4, - [ r3, #0 ] // accu1 = pDat_1[0] - - SMULWT r9, - r5, - r8 // accuX = accu2*val_tw.l - SMULWB r5, - r5, - r8 // accu2 = accu2*val_tw.h - RSB r9, - r9, -# 0 // accuX =-accu2*val_tw.l - SMLAWT r5, r4, r8, - r5 // accu2 = accu2*val_tw.h + accu1*val_tw.l - SMLAWB r4, - r4, r8, - r9 // accu1 = accu1*val_tw.h - accu2*val_tw.l - - LDR r8, - [r1], -# 4 // val_tw = *twiddle++; - LDR r7, - [ r3, # - 4 ] // accu4 = pDat_1[-1] - LDR r6, - [ r2, #4 ] // accu3 = pDat_0[1] - - SMULWB r9, - r7, - r8 // accuX = accu4*val_tw.h - SMULWT r7, - r7, - r8 // accu4 = accu4*val_tw.l - RSB r9, - r9, -# 0 // accuX =-accu4*val_tw.h - SMLAWB r7, r6, r8, - r7 // accu4 = accu4*val_tw.l+accu3*val_tw.h - SMLAWT r6, - r6, r8, - r9 // accu3 = accu3*val_tw.l-accu4*val_tw.h - - STR r5, - [r2], -# 4 // *pDat_0++ = accu2 - STR r4, [r2], -# 4 // *pDat_0++ = accu1 - STR r6, [r3], -#- 4 // *pDat_1-- = accu3 - STR r7, [r3], -#- 4 // *pDat_1-- = accu4 - - /* Second iteration */ - LDR r8, [r1], -# 4 // val_tw = *twiddle++; - LDR r5, - [ r2, #0 ] // accu2 = pDat_0[0] - LDR r4, - [ r3, #0 ] // accu1 = pDat_1[0] - - SMULWT r9, - r5, - r8 // accuX = accu2*val_tw.l - SMULWB r5, - r5, - r8 // accu2 = accu2*val_tw.h - RSB r9, - r9, -# 0 // accuX =-accu2*val_tw.l - SMLAWT r5, r4, r8, - r5 // accu2 = accu2*val_tw.h + accu1*val_tw.l - SMLAWB r4, - r4, r8, - r9 // accu1 = accu1*val_tw.h - accu2*val_tw.l - - LDR r8, - [r1], -# 4 // val_tw = *twiddle++; - LDR r7, - [ r3, # - 4 ] // accu4 = pDat_1[-1] - LDR r6, - [ r2, #4 ] // accu3 = pDat_0[1] - - SMULWB r9, - r7, - r8 // accuX = accu4*val_tw.h - SMULWT r7, - r7, - r8 // accu4 = accu4*val_tw.l - RSB r9, - r9, -# 0 // accuX =-accu4*val_tw.h - SMLAWB r7, r6, r8, - r7 // accu4 = accu4*val_tw.l+accu3*val_tw.h - SMLAWT r6, - r6, r8, - r9 // accu3 = accu3*val_tw.l-accu4*val_tw.h - - STR r5, - [r2], -# 4 // *pDat_0++ = accu2 - STR r4, [r2], -# 4 // *pDat_0++ = accu1 - STR r6, [r3], -#- 4 // *pDat_1-- = accu3 - STR r7, [r3], -#- 4 // *pDat_1-- = accu4 - - SUBS r0, r0, -# 1 BNE dct_IV_loop1_start - - POP { r4 - r9 } - - BX lr -} - -#endif /* FUNCTION_dct_IV_func1 */ - -#ifdef FUNCTION_dct_IV_func2 - -/* __attribute__((noinline)) */ -static inline void dct_IV_func2(int i, const FIXP_SPK *twiddle, - FIXP_DBL *pDat_0, FIXP_DBL *pDat_1, int inc) { - FIXP_DBL accu1, accu2, accu3, accu4, accuX; - LONG val_tw; - - accu1 = pDat_1[-2]; - accu2 = pDat_1[-1]; - - *--pDat_1 = -(pDat_0[1] >> 1); - *pDat_0++ = (pDat_0[0] >> 1); - - twiddle += inc; - - __asm { - LDR val_tw, [twiddle], inc, LSL #2 // val_tw = *twiddle; twiddle += inc - B dct_IV_loop2_2nd_part - - /* 42 cycles for 2 iterations = 21 cycles/iteration */ -dct_IV_loop2: - SMULWT accuX, accu2, val_tw - SMULWB accu2, accu2, val_tw - RSB accuX, accuX, #0 - SMLAWB accuX, accu1, val_tw, accuX - SMLAWT accu2, accu1, val_tw, accu2 - STR accuX, [pDat_0], #4 - STR accu2, [pDat_1, #-4] ! - - LDR accu4, [pDat_0, #4] - LDR accu3, [pDat_0] - SMULWB accuX, accu4, val_tw - SMULWT accu4, accu4, val_tw - RSB accuX, accuX, #0 - SMLAWT accuX, accu3, val_tw, accuX - SMLAWB accu4, accu3, val_tw, accu4 - - LDR accu1, [pDat_1, #-8] - LDR accu2, [pDat_1, #-4] - - LDR val_tw, [twiddle], inc, LSL #2 // val_tw = *twiddle; twiddle += inc - - STR accuX, [pDat_1, #-4] ! - STR accu4, [pDat_0], #4 - -dct_IV_loop2_2nd_part: - SMULWT accuX, accu2, val_tw - SMULWB accu2, accu2, val_tw - RSB accuX, accuX, #0 - SMLAWB accuX, accu1, val_tw, accuX - SMLAWT accu2, accu1, val_tw, accu2 - STR accuX, [pDat_0], #4 - STR accu2, [pDat_1, #-4] ! - - LDR accu4, [pDat_0, #4] - LDR accu3, [pDat_0] - SMULWB accuX, accu4, val_tw - SMULWT accu4, accu4, val_tw - RSB accuX, accuX, #0 - SMLAWT accuX, accu3, val_tw, accuX - SMLAWB accu4, accu3, val_tw, accu4 - - LDR accu1, [pDat_1, #-8] - LDR accu2, [pDat_1, #-4] - - STR accuX, [pDat_1, #-4] ! - STR accu4, [pDat_0], #4 - - LDR val_tw, [twiddle], inc, LSL #2 // val_tw = *twiddle; twiddle += inc - - SUBS i, i, #1 - BNE dct_IV_loop2 - } - - /* Last Sin and Cos value pair are the same */ - accu1 = fMultDiv2(accu1, WTC(0x5a82799a)); - accu2 = fMultDiv2(accu2, WTC(0x5a82799a)); - - *--pDat_1 = accu1 + accu2; - *pDat_0++ = accu1 - accu2; -} -#endif /* FUNCTION_dct_IV_func2 */ - -#ifdef FUNCTION_dst_IV_func1 - -__asm void dst_IV_func1(int i, const FIXP_SPK *twiddle, FIXP_DBL *pDat_0, - FIXP_DBL *pDat_1) { - /* Register map: - r0 i - r1 twiddle - r2 pDat_0 - r3 pDat_1 - r4 accu1 - r5 accu2 - r6 accu3 - r7 accu4 - r8 val_tw - r9 accuX - */ - PUSH{r4 - r9} - - dst_IV_loop1 LDR r8, - [r1], -# 4 // val_tw = *twiddle++ - LDR r5, - [r2] // accu2 = pDat_0[0] - LDR r6, - [ r2, #4 ] // accu3 = pDat_0[1] - RSB r5, - r5, -# 0 // accu2 = -accu2 - SMULWT r9, r5, - r8 // accuX = (-accu2)*val_tw.l - LDR r4, - [ r3, # - 4 ] // accu1 = pDat_1[-1] - RSB r9, - r9, -# 0 // accuX = -(-accu2)*val_tw.l - SMLAWB r9, r4, r8, - r9 // accuX = accu1*val_tw.h-(-accu2)*val_tw.l - SMULWT r4, - r4, - r8 // accu1 = accu1*val_tw.l - LDR r7, - [ r3, # - 8 ] // accu4 = pDat_1[-2] - SMLAWB r5, - r5, r8, - r4 // accu2 = (-accu2)*val_tw.t+accu1*val_tw.l - LDR r8, - [r1], -# 4 // val_tw = *twiddle++ - STR r5, [r2], -# 4 // *pDat_0++ = accu2 - STR r9, [r2], -# 4 // *pDat_0++ = accu1 (accuX) - RSB r7, r7, -# 0 // accu4 = -accu4 - SMULWB r5, r7, - r8 // accu2 = (-accu4)*val_tw.h - SMULWB r4, - r6, - r8 // accu1 = (-accu4)*val_tw.l - RSB r5, - r5, -# 0 // accu2 = -(-accu4)*val_tw.h - SMLAWT r6, r6, r8, - r5 // accu3 = (-accu4)*val_tw.l-(-accu3)*val_tw.h - SMLAWT r7, - r7, r8, - r4 // accu4 = (-accu3)*val_tw.l+(-accu4)*val_tw.h - STR r6, - [ r3, # - 4 ] ! // *--pDat_1 = accu3 - STR r7, - [ r3, # - 4 ] ! // *--pDat_1 = accu4 - - LDR r8, - [r1], -# 4 // val_tw = *twiddle++ - LDR r5, - [r2] // accu2 = pDat_0[0] - LDR r6, - [ r2, #4 ] // accu3 = pDat_0[1] - RSB r5, - r5, -# 0 // accu2 = -accu2 - SMULWT r9, r5, - r8 // accuX = (-accu2)*val_tw.l - LDR r4, - [ r3, # - 4 ] // accu1 = pDat_1[-1] - RSB r9, - r9, -# 0 // accuX = -(-accu2)*val_tw.l - SMLAWB r9, r4, r8, - r9 // accuX = accu1*val_tw.h-(-accu2)*val_tw.l - SMULWT r4, - r4, - r8 // accu1 = accu1*val_tw.l - LDR r7, - [ r3, # - 8 ] // accu4 = pDat_1[-2] - SMLAWB r5, - r5, r8, - r4 // accu2 = (-accu2)*val_tw.t+accu1*val_tw.l - LDR r8, - [r1], -# 4 // val_tw = *twiddle++ - STR r5, [r2], -# 4 // *pDat_0++ = accu2 - STR r9, [r2], -# 4 // *pDat_0++ = accu1 (accuX) - RSB r7, r7, -# 0 // accu4 = -accu4 - SMULWB r5, r7, - r8 // accu2 = (-accu4)*val_tw.h - SMULWB r4, - r6, - r8 // accu1 = (-accu4)*val_tw.l - RSB r5, - r5, -# 0 // accu2 = -(-accu4)*val_tw.h - SMLAWT r6, r6, r8, - r5 // accu3 = (-accu4)*val_tw.l-(-accu3)*val_tw.h - SMLAWT r7, - r7, r8, - r4 // accu4 = (-accu3)*val_tw.l+(-accu4)*val_tw.h - STR r6, - [ r3, # - 4 ] ! // *--pDat_1 = accu3 - STR r7, - [ r3, # - 4 ] ! // *--pDat_1 = accu4 - - SUBS r0, - r0, -# 4 // i-= 4 - BNE dst_IV_loop1 - - POP{r4 - r9} BX lr -} -#endif /* FUNCTION_dst_IV_func1 */ - -#ifdef FUNCTION_dst_IV_func2 - -/* __attribute__((noinline)) */ -static inline void dst_IV_func2(int i, const FIXP_SPK *twiddle, - FIXP_DBL *RESTRICT pDat_0, - FIXP_DBL *RESTRICT pDat_1, int inc) { - FIXP_DBL accu1, accu2, accu3, accu4; - LONG val_tw; - - accu4 = pDat_0[0]; - accu3 = pDat_0[1]; - accu4 >>= 1; - accu3 >>= 1; - accu4 = -accu4; - - accu1 = pDat_1[-1]; - accu2 = pDat_1[0]; - - *pDat_0++ = accu3; - *pDat_1-- = accu4; - - __asm { - B dst_IV_loop2_2nd_part - - /* 50 cycles for 2 iterations = 25 cycles/iteration */ - -dst_IV_loop2: - - LDR val_tw, [twiddle], inc, LSL #2 // val_tw = *twiddle; twiddle += inc - - RSB accu2, accu2, #0 // accu2 = -accu2 - RSB accu1, accu1, #0 // accu1 = -accu1 - SMULWT accu3, accu2, val_tw // accu3 = (-accu2)*val_tw.l - SMULWT accu4, accu1, val_tw // accu4 = (-accu1)*val_tw.l - RSB accu3, accu3, #0 // accu3 = -accu2*val_tw.l - SMLAWB accu1, accu1, val_tw, accu3 // accu1 = -accu1*val_tw.h-(-accu2)*val_tw.l - SMLAWB accu2, accu2, val_tw, accu4 // accu2 = (-accu1)*val_tw.l+(-accu2)*val_tw.h - STR accu1, [pDat_1], #-4 // *pDat_1-- = accu1 - STR accu2, [pDat_0], #4 // *pDat_0++ = accu2 - - LDR accu4, [pDat_0] // accu4 = pDat_0[0] - LDR accu3, [pDat_0, #4] // accu3 = pDat_0[1] - - RSB accu4, accu4, #0 // accu4 = -accu4 - RSB accu3, accu3, #0 // accu3 = -accu3 - - SMULWB accu1, accu3, val_tw // accu1 = (-accu3)*val_tw.h - SMULWT accu2, accu3, val_tw // accu2 = (-accu3)*val_tw.l - RSB accu1, accu1, #0 // accu1 = -(-accu3)*val_tw.h - SMLAWT accu3, accu4, val_tw, accu1 // accu3 = (-accu4)*val_tw.l-(-accu3)*val_tw.h - SMLAWB accu4, accu4, val_tw, accu2 // accu4 = (-accu3)*val_tw.l+(-accu4)*val_tw.h - - LDR accu1, [pDat_1, #-4] // accu1 = pDat_1[-1] - LDR accu2, [pDat_1] // accu2 = pDat_1[0] - - STR accu3, [pDat_0], #4 // *pDat_0++ = accu3 - STR accu4, [pDat_1], #-4 // *pDat_1-- = accu4 - -dst_IV_loop2_2nd_part: - - LDR val_tw, [twiddle], inc, LSL #2 // val_tw = *twiddle; twiddle += inc - - RSB accu2, accu2, #0 // accu2 = -accu2 - RSB accu1, accu1, #0 // accu1 = -accu1 - SMULWT accu3, accu2, val_tw // accu3 = (-accu2)*val_tw.l - SMULWT accu4, accu1, val_tw // accu4 = (-accu1)*val_tw.l - RSB accu3, accu3, #0 // accu3 = -accu2*val_tw.l - SMLAWB accu1, accu1, val_tw, accu3 // accu1 = -accu1*val_tw.h-(-accu2)*val_tw.l - SMLAWB accu2, accu2, val_tw, accu4 // accu2 = (-accu1)*val_tw.l+(-accu2)*val_tw.h - STR accu1, [pDat_1], #-4 // *pDat_1-- = accu1 - STR accu2, [pDat_0], #4 // *pDat_0++ = accu2 - - LDR accu4, [pDat_0] // accu4 = pDat_0[0] - LDR accu3, [pDat_0, #4] // accu3 = pDat_0[1] - - RSB accu4, accu4, #0 // accu4 = -accu4 - RSB accu3, accu3, #0 // accu3 = -accu3 - - SMULWB accu1, accu3, val_tw // accu1 = (-accu3)*val_tw.h - SMULWT accu2, accu3, val_tw // accu2 = (-accu3)*val_tw.l - RSB accu1, accu1, #0 // accu1 = -(-accu3)*val_tw.h - SMLAWT accu3, accu4, val_tw, accu1 // accu3 = (-accu4)*val_tw.l-(-accu3)*val_tw.h - SMLAWB accu4, accu4, val_tw, accu2 // accu4 = (-accu3)*val_tw.l+(-accu4)*val_tw.h - - LDR accu1, [pDat_1, #-4] // accu1 = pDat_1[-1] - LDR accu2, [pDat_1] // accu2 = pDat_1[0] - - STR accu3, [pDat_0], #4 // *pDat_0++ = accu3 - STR accu4, [pDat_1], #-4 // *pDat_1-- = accu4 - - SUBS i, i, #1 - BNE dst_IV_loop2 - } - - /* Last Sin and Cos value pair are the same */ - accu1 = fMultDiv2(-accu1, WTC(0x5a82799a)); - accu2 = fMultDiv2(-accu2, WTC(0x5a82799a)); - - *pDat_0 = accu1 + accu2; - *pDat_1 = accu1 - accu2; -} -#endif /* FUNCTION_dst_IV_func2 */ diff --git a/libFDK/src/dct.cpp b/libFDK/src/dct.cpp index a451331..776493e 100644 --- a/libFDK/src/dct.cpp +++ b/libFDK/src/dct.cpp @@ -124,10 +124,6 @@ amm-info@iis.fraunhofer.de #include "FDK_tools_rom.h" #include "fft.h" -#if defined(__arm__) -#include "arm/dct_arm.cpp" -#endif - void dct_getTables(const FIXP_WTP **ptwiddle, const FIXP_STP **sin_twiddle, int *sin_step, int length) { const FIXP_WTP *twiddle; @@ -387,12 +383,6 @@ void dct_IV(FIXP_DBL *pDat, int L, int *pDat_e) { dct_getTables(&twiddle, &sin_twiddle, &sin_step, L); -#ifdef FUNCTION_dct_IV_func1 - if (M >= 4 && (M & 3) == 0) { - /* ARM926: 44 cycles for 2 iterations = 22 cycles/iteration */ - dct_IV_func1(M >> 2, twiddle, &pDat[0], &pDat[L - 1]); - } else -#endif /* FUNCTION_dct_IV_func1 */ { FIXP_DBL *RESTRICT pDat_0 = &pDat[0]; FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2]; @@ -410,10 +400,10 @@ void dct_IV(FIXP_DBL *pDat, int L, int *pDat_e) { cplxMultDiv2(&accu1, &accu2, accu1, accu2, twiddle[i]); cplxMultDiv2(&accu3, &accu4, accu4, accu3, twiddle[i + 1]); - pDat_0[0] = accu2; - pDat_0[1] = accu1; - pDat_1[0] = accu4; - pDat_1[1] = -accu3; + pDat_0[0] = accu2 >> 1; + pDat_0[1] = accu1 >> 1; + pDat_1[0] = accu4 >> 1; + pDat_1[1] = -(accu3 >> 1); } if (M & 1) { FIXP_DBL accu1, accu2; @@ -423,19 +413,13 @@ void dct_IV(FIXP_DBL *pDat, int L, int *pDat_e) { cplxMultDiv2(&accu1, &accu2, accu1, accu2, twiddle[i]); - pDat_0[0] = accu2; - pDat_0[1] = accu1; + pDat_0[0] = accu2 >> 1; + pDat_0[1] = accu1 >> 1; } } fft(M, pDat, pDat_e); -#ifdef FUNCTION_dct_IV_func2 - if (M >= 4 && (M & 3) == 0) { - /* ARM926: 42 cycles for 2 iterations = 21 cycles/iteration */ - dct_IV_func2(M >> 2, sin_twiddle, &pDat[0], &pDat[L], sin_step); - } else -#endif /* FUNCTION_dct_IV_func2 */ { FIXP_DBL *RESTRICT pDat_0 = &pDat[0]; FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2]; @@ -446,20 +430,19 @@ void dct_IV(FIXP_DBL *pDat, int L, int *pDat_e) { accu1 = pDat_1[0]; accu2 = pDat_1[1]; - pDat_1[1] = -(pDat_0[1] >> 1); - pDat_0[0] = (pDat_0[0] >> 1); + pDat_1[1] = -pDat_0[1]; /* 28 cycles for ARM926 */ for (idx = sin_step, i = 1; i<(M + 1)>> 1; i++, idx += sin_step) { FIXP_STP twd = sin_twiddle[idx]; - cplxMultDiv2(&accu3, &accu4, accu1, accu2, twd); + cplxMult(&accu3, &accu4, accu1, accu2, twd); pDat_0[1] = accu3; pDat_1[0] = accu4; pDat_0 += 2; pDat_1 -= 2; - cplxMultDiv2(&accu3, &accu4, pDat_0[1], pDat_0[0], twd); + cplxMult(&accu3, &accu4, pDat_0[1], pDat_0[0], twd); accu1 = pDat_1[0]; accu2 = pDat_1[1]; @@ -470,8 +453,8 @@ void dct_IV(FIXP_DBL *pDat, int L, int *pDat_e) { if ((M & 1) == 0) { /* Last Sin and Cos value pair are the same */ - accu1 = fMultDiv2(accu1, WTC(0x5a82799a)); - accu2 = fMultDiv2(accu2, WTC(0x5a82799a)); + accu1 = fMult(accu1, WTC(0x5a82799a)); + accu2 = fMult(accu2, WTC(0x5a82799a)); pDat_1[0] = accu1 + accu2; pDat_0[1] = accu1 - accu2; @@ -497,11 +480,6 @@ void dst_IV(FIXP_DBL *pDat, int L, int *pDat_e) { dct_getTables(&twiddle, &sin_twiddle, &sin_step, L); -#ifdef FUNCTION_dst_IV_func1 - if ((M >= 4) && ((M & 3) == 0)) { - dst_IV_func1(M, twiddle, &pDat[0], &pDat[L]); - } else -#endif { FIXP_DBL *RESTRICT pDat_0 = &pDat[0]; FIXP_DBL *RESTRICT pDat_1 = &pDat[L - 2]; @@ -519,10 +497,10 @@ void dst_IV(FIXP_DBL *pDat, int L, int *pDat_e) { cplxMultDiv2(&accu1, &accu2, accu1, accu2, twiddle[i]); cplxMultDiv2(&accu3, &accu4, accu4, accu3, twiddle[i + 1]); - pDat_0[0] = accu2; - pDat_0[1] = accu1; - pDat_1[0] = accu4; - pDat_1[1] = -accu3; + pDat_0[0] = accu2 >> 1; + pDat_0[1] = accu1 >> 1; + pDat_1[0] = accu4 >> 1; + pDat_1[1] = -(accu3 >> 1); } if (M & 1) { FIXP_DBL accu1, accu2; @@ -532,19 +510,13 @@ void dst_IV(FIXP_DBL *pDat, int L, int *pDat_e) { cplxMultDiv2(&accu1, &accu2, accu1, accu2, twiddle[i]); - pDat_0[0] = accu2; - pDat_0[1] = accu1; + pDat_0[0] = accu2 >> 1; + pDat_0[1] = accu1 >> 1; } } fft(M, pDat, pDat_e); -#ifdef FUNCTION_dst_IV_func2 - if ((M >= 4) && ((M & 3) == 0)) { - dst_IV_func2(M >> 2, sin_twiddle + sin_step, &pDat[0], &pDat[L - 1], - sin_step); - } else -#endif /* FUNCTION_dst_IV_func2 */ { FIXP_DBL *RESTRICT pDat_0; FIXP_DBL *RESTRICT pDat_1; @@ -558,20 +530,20 @@ void dst_IV(FIXP_DBL *pDat, int L, int *pDat_e) { accu1 = pDat_1[0]; accu2 = pDat_1[1]; - pDat_1[1] = -(pDat_0[0] >> 1); - pDat_0[0] = (pDat_0[1] >> 1); + pDat_1[1] = -pDat_0[0]; + pDat_0[0] = pDat_0[1]; for (idx = sin_step, i = 1; i<(M + 1)>> 1; i++, idx += sin_step) { FIXP_STP twd = sin_twiddle[idx]; - cplxMultDiv2(&accu3, &accu4, accu1, accu2, twd); + cplxMult(&accu3, &accu4, accu1, accu2, twd); pDat_1[0] = -accu3; pDat_0[1] = -accu4; pDat_0 += 2; pDat_1 -= 2; - cplxMultDiv2(&accu3, &accu4, pDat_0[1], pDat_0[0], twd); + cplxMult(&accu3, &accu4, pDat_0[1], pDat_0[0], twd); accu1 = pDat_1[0]; accu2 = pDat_1[1]; @@ -582,8 +554,8 @@ void dst_IV(FIXP_DBL *pDat, int L, int *pDat_e) { if ((M & 1) == 0) { /* Last Sin and Cos value pair are the same */ - accu1 = fMultDiv2(accu1, WTC(0x5a82799a)); - accu2 = fMultDiv2(accu2, WTC(0x5a82799a)); + accu1 = fMult(accu1, WTC(0x5a82799a)); + accu2 = fMult(accu2, WTC(0x5a82799a)); pDat_0[1] = -accu1 - accu2; pDat_1[0] = accu2 - accu1; diff --git a/libMpegTPDec/src/tpdec_lib.cpp b/libMpegTPDec/src/tpdec_lib.cpp index 1d8b7b3..2a40187 100644 --- a/libMpegTPDec/src/tpdec_lib.cpp +++ b/libMpegTPDec/src/tpdec_lib.cpp @@ -736,9 +736,9 @@ static TRANSPORTDEC_ERROR transportDec_AdjustEndOfAccessUnit( hTp->parser.latm.m_audioMuxLengthBytes > 0) { int loasOffset; - loasOffset = (hTp->parser.latm.m_audioMuxLengthBytes * 8 + - FDKgetValidBits(hBs)) - - hTp->globalFramePos; + loasOffset = ((INT)hTp->parser.latm.m_audioMuxLengthBytes * 8 + + (INT)FDKgetValidBits(hBs)) - + (INT)hTp->globalFramePos; if (loasOffset != 0) { FDKpushBiDirectional(hBs, loasOffset); /* For ELD and other payloads there is an unknown amount of padding, @@ -871,7 +871,7 @@ static TRANSPORTDEC_ERROR transportDec_readHeader( int fConfigFound = (pfConfigFound != NULL) ? *pfConfigFound : 0; int startPos; - startPos = FDKgetValidBits(hBs); + startPos = (INT)FDKgetValidBits(hBs); switch (hTp->transportFmt) { case TT_MP4_ADTS: @@ -941,7 +941,7 @@ static TRANSPORTDEC_ERROR transportDec_readHeader( fTraverseMoreFrames = 0; } syncLayerFrameBits = (hTp->parser.adts.bs.frame_length << 3) - - ((INT)startPos - (INT)FDKgetValidBits(hBs)) - + (startPos - (INT)FDKgetValidBits(hBs)) - syncLength; if (syncLayerFrameBits <= 0) { err = TRANSPORTDEC_SYNC_ERROR; @@ -952,7 +952,7 @@ static TRANSPORTDEC_ERROR transportDec_readHeader( break; case TT_MP4_LOAS: if (hTp->numberOfRawDataBlocks <= 0) { - syncLayerFrameBits = FDKreadBits(hBs, 13); + syncLayerFrameBits = (INT)FDKreadBits(hBs, 13); hTp->parser.latm.m_audioMuxLengthBytes = syncLayerFrameBits; syncLayerFrameBits <<= 3; } @@ -974,7 +974,7 @@ static TRANSPORTDEC_ERROR transportDec_readHeader( hTp->numberOfRawDataBlocks = CLatmDemux_GetNrOfSubFrames(&hTp->parser.latm); if (hTp->transportFmt == TT_MP4_LOAS) { - syncLayerFrameBits -= startPos - FDKgetValidBits(hBs) - (13); + syncLayerFrameBits -= startPos - (INT)FDKgetValidBits(hBs) - (13); } } } else { diff --git a/libSACdec/src/sac_bitdec.cpp b/libSACdec/src/sac_bitdec.cpp index 37e0cf2..45fb17a 100644 --- a/libSACdec/src/sac_bitdec.cpp +++ b/libSACdec/src/sac_bitdec.cpp @@ -291,13 +291,13 @@ SACDEC_ERROR SpatialDecParseSpecificConfigHeader( if (sacHeaderLen == 127) { sacHeaderLen += FDKreadBits(bitstream, 16); } - numFillBits = FDKgetValidBits(bitstream); + numFillBits = (INT)FDKgetValidBits(bitstream); err = SpatialDecParseSpecificConfig(bitstream, pSpatialSpecificConfig, sacHeaderLen, coreCodec); numFillBits -= - FDKgetValidBits(bitstream); /* the number of read bits (tmpBits) */ + (INT)FDKgetValidBits(bitstream); /* the number of read bits (tmpBits) */ numFillBits = (8 * sacHeaderLen) - numFillBits; if (numFillBits < 0) { /* Parsing went wrong */ diff --git a/libSACdec/src/sac_dec_lib.cpp b/libSACdec/src/sac_dec_lib.cpp index ebf9bee..5ae89d1 100644 --- a/libSACdec/src/sac_dec_lib.cpp +++ b/libSACdec/src/sac_dec_lib.cpp @@ -1232,7 +1232,7 @@ int mpegSurroundDecoder_Parse(CMpegSurroundDecoder *pMpegSurroundDecoder, FDK_ASSERT(pMpegSurroundDecoder->pSpatialDec); - mpsBsBits = FDKgetValidBits(hBs); + mpsBsBits = (INT)FDKgetValidBits(hBs); sscParse = &pMpegSurroundDecoder ->spatialSpecificConfig[pMpegSurroundDecoder->bsFrameParse]; @@ -1308,14 +1308,14 @@ int mpegSurroundDecoder_Parse(CMpegSurroundDecoder *pMpegSurroundDecoder, pMpegSurroundDecoder->spatialSpecificConfigBackup; /* Parse spatial specific config */ - bitsRead = FDKgetValidBits(hMpsBsData); + bitsRead = (INT)FDKgetValidBits(hMpsBsData); err = SpatialDecParseSpecificConfigHeader( hMpsBsData, &pMpegSurroundDecoder->spatialSpecificConfigBackup, coreCodec, pMpegSurroundDecoder->upmixType); - bitsRead = (bitsRead - FDKgetValidBits(hMpsBsData)); + bitsRead = (bitsRead - (INT)FDKgetValidBits(hMpsBsData)); parseResult = ((err == MPS_OK) ? bitsRead : -bitsRead); if (parseResult < 0) { @@ -1429,7 +1429,7 @@ int mpegSurroundDecoder_Parse(CMpegSurroundDecoder *pMpegSurroundDecoder, bail: - *pMpsDataBits -= (mpsBsBits - FDKgetValidBits(hBs)); + *pMpsDataBits -= (mpsBsBits - (INT)FDKgetValidBits(hBs)); return err; } From 3dd382275553f6c234e9ec758312d0ac6ef76dc1 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Jun 2018 18:07:14 +0200 Subject: [PATCH 02/26] Always check whether given channel config is supported. Bug: 112660981 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I169161dd31bc624f2cab6be2b4c6518946ed32ba --- libAACdec/src/aacdecoder.cpp | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/libAACdec/src/aacdecoder.cpp b/libAACdec/src/aacdecoder.cpp index 2f43fc0..fab30de 100644 --- a/libAACdec/src/aacdecoder.cpp +++ b/libAACdec/src/aacdecoder.cpp @@ -1630,18 +1630,10 @@ CAacDecoder_Init(HANDLE_AACDECODER self, const CSAudioSpecificConfig *asc, aacChannelsOffset = 0; aacChannelsOffsetIdx = 0; elementOffset = 0; - if ((ascChannels <= 0) || + if ((ascChannels <= 0) || (ascChannels > (8)) || (asc->m_channelConfiguration > AACDEC_MAX_CH_CONF)) { return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; } - if ((ascChannels + aacChannelsOffsetIdx) > ((8) * 2)) { - return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; - } - if (configMode & AC_CM_ALLOC_MEM) { - if ((ascChannels + aacChannelsOffset) > (8)) { - return AAC_DEC_UNSUPPORTED_CHANNELCONFIG; - } - } /* Set syntax flags */ self->flags[streamIndex] = 0; From 6a39cdb6eef730d848a9f0a15d7506bc9c00ef78 Mon Sep 17 00:00:00 2001 From: Harish Mahendrakar Date: Wed, 9 Jan 2019 14:01:08 -0800 Subject: [PATCH 03/26] Don't explicitly enable CFI in libFraunhoferAAC Since libFraunhoferAAC is a static library, both CFI and non-CFI variants will be built and linked accordingly. If it is used as a shared library in the future, we'll need to explicitly re-enable CFI in the build file. Bug: 117994055 Change-Id: I825c53b5f895e00c1fb9357c573b6b5c2261c743 --- Android.bp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Android.bp b/Android.bp index dce6fdd..80a0347 100644 --- a/Android.bp +++ b/Android.bp @@ -30,7 +30,8 @@ cc_library_static { "signed-integer-overflow", "bounds", ], - cfi: true, + // Enable CFI if this becomes a shared library. + // cfi: true, }, shared_libs: [ "liblog", From 0309455012f1a39cb37ecfd1c10052118c22b27e Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Thu, 7 Mar 2019 13:15:15 -0800 Subject: [PATCH 04/26] libMpegTPDec: fix use of uninitialized value in OutOfBandConfig Initialize tmpConf in transportDec_OutOfBandConfig Bug: 120426166 Test: see bug Change-Id: I72ac8bc96a7d386ffe32acd669c78c4a581d52dc --- libMpegTPDec/src/tpdec_lib.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libMpegTPDec/src/tpdec_lib.cpp b/libMpegTPDec/src/tpdec_lib.cpp index 1976cb9..506aed3 100644 --- a/libMpegTPDec/src/tpdec_lib.cpp +++ b/libMpegTPDec/src/tpdec_lib.cpp @@ -274,7 +274,7 @@ TRANSPORTDEC_ERROR transportDec_OutOfBandConfig(HANDLE_TRANSPORTDEC hTp, UCHAR configChanged = 0; UCHAR configMode = AC_CM_DET_CFG_CHANGE; - UCHAR tmpConf[1024]; + UCHAR tmpConf[1024] = {0}; if (length > 1024) { return TRANSPORTDEC_UNSUPPORTED_FORMAT; } From 8972e93edd448c378e0cc099a0fbe25b64295a64 Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Thu, 7 Mar 2019 14:16:05 -0800 Subject: [PATCH 05/26] libSBRdec: prevent OOB access In generateFixFixOnly() check validity of index before accessing SBR decoder envolope tables. Bug: 112052062 Test: see bug Change-Id: Icd7ec3807eea9ef8417dba7383f361101becc4f2 --- libSBRdec/src/env_extr.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libSBRdec/src/env_extr.cpp b/libSBRdec/src/env_extr.cpp index c72a7b6..5b7a0b1 100644 --- a/libSBRdec/src/env_extr.cpp +++ b/libSBRdec/src/env_extr.cpp @@ -1152,6 +1152,10 @@ static int generateFixFixOnly(FRAME_INFO *hSbrFrameInfo, int tranPosInternal, int nEnv, i, tranIdx; const int *pTable; + if (tranPosInternal >= numberTimeSlots) { + return 0; + } + switch (numberTimeSlots) { case 8: pTable = FDK_sbrDecoder_envelopeTable_8[tranPosInternal]; From 8e27e0bd3004b41ebc61be9f8b19a0cb4787f39b Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Thu, 7 Mar 2019 12:52:29 -0800 Subject: [PATCH 06/26] AAC decoder: fix use of uninitialized value, check index Initialize aInterpolate int array in mapIndexData(). Prevent index from accessing OOB value. Bug: 120426980 Test: see bug Change-Id: Ib9f1b5e143802d3d662af36fedcae8bf47ff09bc --- libSACdec/src/sac_bitdec.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libSACdec/src/sac_bitdec.cpp b/libSACdec/src/sac_bitdec.cpp index 883e1e8..a1bdca4 100644 --- a/libSACdec/src/sac_bitdec.cpp +++ b/libSACdec/src/sac_bitdec.cpp @@ -1457,7 +1457,7 @@ static SACDEC_ERROR mapIndexData( FIXP_DBL (*pOttVsTotDb1)[MAX_PARAMETER_SETS][MAX_PARAMETER_BANDS], FIXP_DBL (*pOttVsTotDb2)[MAX_PARAMETER_SETS][MAX_PARAMETER_BANDS]) { int aParamSlots[MAX_PARAMETER_SETS]; - int aInterpolate[MAX_PARAMETER_SETS]; + int aInterpolate[MAX_PARAMETER_SETS] = {0}; int dataSets; int aMap[MAX_PARAMETER_BANDS + 1]; @@ -1562,6 +1562,7 @@ static SACDEC_ERROR mapIndexData( i2 = i; while (aInterpolate[i2] == 1) { i2++; + if (i2 >= MAX_PARAMETER_SETS) return MPS_WRONG_PARAMETERSETS; } x1 = paramSlot[i1]; xi = paramSlot[i]; From c2e0dfe237e2a3bd8a43e8a8025631d6fec4590d Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Thu, 20 Dec 2018 15:52:46 +0100 Subject: [PATCH 07/26] Clear config in case of parsing error in drcDec_readUniDrc() Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: Ic1a12cbd31aa51d8a89bc4d6a67f9b0289265b6c --- libDRCdec/src/drcDec_reader.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/libDRCdec/src/drcDec_reader.cpp b/libDRCdec/src/drcDec_reader.cpp index 6fe7a04..469203e 100644 --- a/libDRCdec/src/drcDec_reader.cpp +++ b/libDRCdec/src/drcDec_reader.cpp @@ -185,10 +185,18 @@ drcDec_readUniDrc(HANDLE_FDK_BITSTREAM hBs, HANDLE_UNI_DRC_CONFIG hUniDrcConfig, uniDrcConfigPresent = FDKreadBits(hBs, 1); if (uniDrcConfigPresent) { err = drcDec_readUniDrcConfig(hBs, hUniDrcConfig); - if (err) return err; + if (err) { + /* clear config, if parsing error occured */ + FDKmemclear(hUniDrcConfig, sizeof(UNI_DRC_CONFIG)); + hUniDrcConfig->diff = 1; + } } err = drcDec_readLoudnessInfoSet(hBs, hLoudnessInfoSet); - if (err) return err; + if (err) { + /* clear config, if parsing error occured */ + FDKmemclear(hLoudnessInfoSet, sizeof(LOUDNESS_INFO_SET)); + hLoudnessInfoSet->diff = 1; + } } if (hUniDrcGain != NULL) { From 2bd940425413c735ea78f931250ee1da8ad6691b Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Thu, 20 Dec 2018 15:52:46 +0100 Subject: [PATCH 08/26] Always call startSelectionProcess() independent on an error in FDK_drcDec_ReadUniDrc() Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: Ie7fdb69ea7a6d68b14b9fa06e68c86496cb01a02 --- libDRCdec/src/FDK_drcDecLib.cpp | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/libDRCdec/src/FDK_drcDecLib.cpp b/libDRCdec/src/FDK_drcDecLib.cpp index b29b79d..16b8152 100644 --- a/libDRCdec/src/FDK_drcDecLib.cpp +++ b/libDRCdec/src/FDK_drcDecLib.cpp @@ -173,13 +173,11 @@ static int isResetNeeded(HANDLE_DRC_DECODER hDrcDec, return resetNeeded; } -static DRC_DEC_ERROR startSelectionProcess(HANDLE_DRC_DECODER hDrcDec) { - DRC_ERROR dErr = DE_OK; - DRCDEC_SELECTION_PROCESS_RETURN sErr = DRCDEC_SELECTION_PROCESS_NO_ERROR; +static void startSelectionProcess(HANDLE_DRC_DECODER hDrcDec) { int uniDrcConfigHasChanged = 0; SEL_PROC_OUTPUT oldSelProcOutput = hDrcDec->selProcOutput; - if (!hDrcDec->status) return DRC_DEC_NOT_READY; + if (!hDrcDec->status) return; if (hDrcDec->functionalRange & DRC_DEC_SELECTION) { uniDrcConfigHasChanged = hDrcDec->uniDrcConfig.diff; @@ -189,10 +187,9 @@ static DRC_DEC_ERROR startSelectionProcess(HANDLE_DRC_DECODER hDrcDec) { */ hDrcDec->selProcOutput.numSelectedDrcSets = 0; - sErr = drcDec_SelectionProcess_Process( + drcDec_SelectionProcess_Process( hDrcDec->hSelectionProc, &(hDrcDec->uniDrcConfig), &(hDrcDec->loudnessInfoSet), &(hDrcDec->selProcOutput)); - if (sErr) return DRC_DEC_OK; hDrcDec->selProcInputDiff = 0; hDrcDec->uniDrcConfig.diff = 0; @@ -202,15 +199,12 @@ static DRC_DEC_ERROR startSelectionProcess(HANDLE_DRC_DECODER hDrcDec) { if (hDrcDec->functionalRange & DRC_DEC_GAIN) { if (isResetNeeded(hDrcDec, oldSelProcOutput) || uniDrcConfigHasChanged) { - dErr = - drcDec_GainDecoder_Config(hDrcDec->hGainDec, &(hDrcDec->uniDrcConfig), - hDrcDec->selProcOutput.numSelectedDrcSets, - hDrcDec->selProcOutput.selectedDrcSetIds, - hDrcDec->selProcOutput.selectedDownmixIds); - if (dErr) return DRC_DEC_OK; + drcDec_GainDecoder_Config(hDrcDec->hGainDec, &(hDrcDec->uniDrcConfig), + hDrcDec->selProcOutput.numSelectedDrcSets, + hDrcDec->selProcOutput.selectedDrcSetIds, + hDrcDec->selProcOutput.selectedDownmixIds); } } - return DRC_DEC_OK; } DRC_DEC_ERROR @@ -721,9 +715,9 @@ FDK_drcDec_ReadUniDrc(HANDLE_DRC_DECODER hDrcDec, drcDec_GainDecoder_GetFrameSize(hDrcDec->hGainDec), drcDec_GainDecoder_GetDeltaTminDefault(hDrcDec->hGainDec), &(hDrcDec->uniDrcGain)); - if (dErr) return DRC_DEC_NOT_OK; startSelectionProcess(hDrcDec); + if (dErr) return DRC_DEC_NOT_OK; hDrcDec->status = DRC_DEC_NEW_GAIN_PAYLOAD; From 1f908ac9b0bf42e6485a82a5b0d7d5247fd67f99 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Thu, 20 Dec 2018 15:52:46 +0100 Subject: [PATCH 09/26] Add MPEG-D DRC sanity checks Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I5413e43d5cfc895b8c3171f8857ca6feab6c269e --- libDRCdec/src/drcDec_reader.cpp | 4 ++-- libDRCdec/src/drcDec_selectionProcess.cpp | 5 +++++ libDRCdec/src/drcDec_types.h | 8 ++++---- libDRCdec/src/drcGainDec_init.cpp | 6 ++++-- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/libDRCdec/src/drcDec_reader.cpp b/libDRCdec/src/drcDec_reader.cpp index 6fe7a04..e7b3360 100644 --- a/libDRCdec/src/drcDec_reader.cpp +++ b/libDRCdec/src/drcDec_reader.cpp @@ -1130,7 +1130,7 @@ static DRC_ERROR _readDrcCoefficientsUniDrc(HANDLE_FDK_BITSTREAM hBs, drcCharacteristicLeftPresent = FDKreadBits(hBs, 1); if (drcCharacteristicLeftPresent) { pCoef->characteristicLeftCount = FDKreadBits(hBs, 4); - if ((pCoef->characteristicLeftCount + 1) > 8) return DE_MEMORY_ERROR; + if ((pCoef->characteristicLeftCount + 1) > 16) return DE_MEMORY_ERROR; for (i = 0; i < pCoef->characteristicLeftCount; i++) { err = _readCustomDrcCharacteristic( hBs, CS_LEFT, &(pCoef->characteristicLeftFormat[i + 1]), @@ -1141,7 +1141,7 @@ static DRC_ERROR _readDrcCoefficientsUniDrc(HANDLE_FDK_BITSTREAM hBs, drcCharacteristicRightPresent = FDKreadBits(hBs, 1); if (drcCharacteristicRightPresent) { pCoef->characteristicRightCount = FDKreadBits(hBs, 4); - if ((pCoef->characteristicRightCount + 1) > 8) return DE_MEMORY_ERROR; + if ((pCoef->characteristicRightCount + 1) > 16) return DE_MEMORY_ERROR; for (i = 0; i < pCoef->characteristicRightCount; i++) { err = _readCustomDrcCharacteristic( hBs, CS_RIGHT, &(pCoef->characteristicRightFormat[i + 1]), diff --git a/libDRCdec/src/drcDec_selectionProcess.cpp b/libDRCdec/src/drcDec_selectionProcess.cpp index 9228197..5653e22 100644 --- a/libDRCdec/src/drcDec_selectionProcess.cpp +++ b/libDRCdec/src/drcDec_selectionProcess.cpp @@ -2173,6 +2173,9 @@ static DRCDEC_SELECTION_PROCESS_RETURN _selectDownmixMatrix( if (hSelProcOutput->activeDownmixId != 0) { for (i = 0; i < hUniDrcConfig->downmixInstructionsCount; i++) { DOWNMIX_INSTRUCTIONS* pDown = &(hUniDrcConfig->downmixInstructions[i]); + if (pDown->targetChannelCount > 8) { + continue; + } if (hSelProcOutput->activeDownmixId == pDown->downmixId) { hSelProcOutput->targetChannelCount = pDown->targetChannelCount; @@ -2825,6 +2828,8 @@ static int _downmixCoefficientsArePresent(HANDLE_UNI_DRC_CONFIG hUniDrcConfig, for (i = 0; i < hUniDrcConfig->downmixInstructionsCount; i++) { if (hUniDrcConfig->downmixInstructions[i].downmixId == downmixId) { if (hUniDrcConfig->downmixInstructions[i].downmixCoefficientsPresent) { + if (hUniDrcConfig->downmixInstructions[i].targetChannelCount > 8) + return 0; *pIndex = i; return 1; } diff --git a/libDRCdec/src/drcDec_types.h b/libDRCdec/src/drcDec_types.h index 28c17f3..6b99018 100644 --- a/libDRCdec/src/drcDec_types.h +++ b/libDRCdec/src/drcDec_types.h @@ -249,11 +249,11 @@ typedef struct { UCHAR drcFrameSizePresent; USHORT drcFrameSize; UCHAR characteristicLeftCount; - UCHAR characteristicLeftFormat[8]; - CUSTOM_DRC_CHAR customCharacteristicLeft[8]; + UCHAR characteristicLeftFormat[16]; + CUSTOM_DRC_CHAR customCharacteristicLeft[16]; UCHAR characteristicRightCount; - UCHAR characteristicRightFormat[8]; - CUSTOM_DRC_CHAR customCharacteristicRight[8]; + UCHAR characteristicRightFormat[16]; + CUSTOM_DRC_CHAR customCharacteristicRight[16]; UCHAR gainSequenceCount; /* unsaturated value, i.e. as provided in bitstream */ UCHAR gainSetCount; /* saturated to 12 */ diff --git a/libDRCdec/src/drcGainDec_init.cpp b/libDRCdec/src/drcGainDec_init.cpp index 38f3243..c9f87d7 100644 --- a/libDRCdec/src/drcGainDec_init.cpp +++ b/libDRCdec/src/drcGainDec_init.cpp @@ -336,9 +336,11 @@ initActiveDrcOffset(HANDLE_DRC_GAIN_DECODER hGainDec) { for (a = 0; a < hGainDec->nActiveDrcs; a++) { hGainDec->activeDrc[a].activeDrcOffset = accGainElementCount; accGainElementCount += hGainDec->activeDrc[a].gainElementCount; + if (accGainElementCount > 12) { + hGainDec->nActiveDrcs = a; + return DE_NOT_OK; + } } - if (accGainElementCount > 12) return DE_NOT_OK; - return DE_OK; } From a1f6034653ad9025432bcd7071573172d24c1d6f Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Thu, 20 Dec 2018 15:52:46 +0100 Subject: [PATCH 10/26] Clear config in case of parsing error in drcDec_readUniDrc() Change-Id: I827a1ddbed2cf10e6b4fabdea2bf3f71c8f30c6f --- libDRCdec/src/drcDec_reader.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/libDRCdec/src/drcDec_reader.cpp b/libDRCdec/src/drcDec_reader.cpp index e7b3360..a784457 100644 --- a/libDRCdec/src/drcDec_reader.cpp +++ b/libDRCdec/src/drcDec_reader.cpp @@ -185,10 +185,18 @@ drcDec_readUniDrc(HANDLE_FDK_BITSTREAM hBs, HANDLE_UNI_DRC_CONFIG hUniDrcConfig, uniDrcConfigPresent = FDKreadBits(hBs, 1); if (uniDrcConfigPresent) { err = drcDec_readUniDrcConfig(hBs, hUniDrcConfig); - if (err) return err; + if (err) { + /* clear config, if parsing error occured */ + FDKmemclear(hUniDrcConfig, sizeof(UNI_DRC_CONFIG)); + hUniDrcConfig->diff = 1; + } } err = drcDec_readLoudnessInfoSet(hBs, hLoudnessInfoSet); - if (err) return err; + if (err) { + /* clear config, if parsing error occured */ + FDKmemclear(hLoudnessInfoSet, sizeof(LOUDNESS_INFO_SET)); + hLoudnessInfoSet->diff = 1; + } } if (hUniDrcGain != NULL) { From 856e3d339e6e9c190d06df7a67bc3ee90cba3ecf Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 15:55:05 +0100 Subject: [PATCH 11/26] Trigger config change after a change in SBR activity has been recognized. Change-Id: I7715e61fdfcd16dfae6029171888aef9c6f0738e --- libAACdec/src/aacdecoder.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libAACdec/src/aacdecoder.cpp b/libAACdec/src/aacdecoder.cpp index 8f03328..7617937 100644 --- a/libAACdec/src/aacdecoder.cpp +++ b/libAACdec/src/aacdecoder.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -1815,6 +1815,9 @@ CAacDecoder_Init(HANDLE_AACDECODER self, const CSAudioSpecificConfig *asc, self->useLdQmfTimeAlign = asc->m_sc.m_eldSpecificConfig.m_useLdQmfTimeAlign; } + if (self->sbrEnabled != asc->m_sbrPresentFlag) { + ascChanged = 1; + } } self->streamInfo.extAot = asc->m_extensionAudioObjectType; From 273a43f61fdd07e29f2dd62ab3ee95ff8e29a832 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 15:56:06 +0100 Subject: [PATCH 12/26] Discard SBR data in case of unsuccessful SBR header update. Change-Id: I31ab01476d5a9de273c7adce14a1c29fa0023682 --- libSBRdec/src/sbrdecoder.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/libSBRdec/src/sbrdecoder.cpp b/libSBRdec/src/sbrdecoder.cpp index 4bc6f69..c827ced 100644 --- a/libSBRdec/src/sbrdecoder.cpp +++ b/libSBRdec/src/sbrdecoder.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -871,11 +871,10 @@ INT sbrDecoder_Header(HANDLE_SBRDECODER self, HANDLE_FDK_BITSTREAM hBs, if (sbrError == SBRDEC_OK) { hSbrHeader->syncState = SBR_HEADER; hSbrHeader->status |= SBRDEC_HDR_STAT_UPDATE; + } else { + hSbrHeader->syncState = SBR_NOT_INITIALIZED; + hSbrHeader->status = HEADER_ERROR; } - /* else { - Since we already have overwritten the old SBR header the only way out - is UPSAMPLING! This will be prepared in the next step. - } */ } } } From 592c03a9f01cb354a30325e88f0dad27797d6dfd Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 15:56:51 +0100 Subject: [PATCH 13/26] Reset parameter smoothing tool while concealment. Change-Id: I9ec328096e88f5de984daca85a87c200827e7048 --- libSACdec/src/sac_dec.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libSACdec/src/sac_dec.cpp b/libSACdec/src/sac_dec.cpp index 4537d6e..3f55a7d 100644 --- a/libSACdec/src/sac_dec.cpp +++ b/libSACdec/src/sac_dec.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -200,6 +200,7 @@ static void SpatialDecClearFrameData( /* parameter smoothing tool set to off */ bsFrame->bsSmoothMode[0] = 0; + initParameterSmoothing(self); /* reset residual data */ { From 37972d5a1f175173c2747c043ae6f3d1a142d28a Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:01:59 +0100 Subject: [PATCH 14/26] Add support for Album Mode (FDKdec v3.1.0). Bug: 131255165 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I6b4b176ec497587238537bddd89889341733d4e2 --- documentation/aacDecoder.pdf | Bin 500827 -> 487685 bytes libAACdec/include/aacdecoder_lib.h | 8 +++++++- libAACdec/src/aacdecoder_lib.cpp | 9 +++++++-- libDRCdec/include/FDK_drcDecLib.h | 3 ++- libDRCdec/src/FDK_drcDecLib.cpp | 8 +++++++- libDRCdec/src/drcDec_selectionProcess.cpp | 7 ++++++- libDRCdec/src/drcDec_selectionProcess.h | 3 ++- 7 files changed, 31 insertions(+), 7 deletions(-) diff --git a/documentation/aacDecoder.pdf b/documentation/aacDecoder.pdf index 1dec3348752f32b4a3a799596132992568cc4d4b..5c4ef5e193a99fe5706bdb7e0fd03a3af755c216 100644 GIT binary patch delta 184500 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≷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 VqIue+EQv`M1FDlA>8d)u5MJef+{n;>g(Rce&Y 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

    l>#)(8; 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

    Is+M~aqAnN zH<$@*#nOoE}srMtTB}(uMUe(`vOnEPy!s*Qs;sKls{Slqhc6M2Pgo+QGKbFe( z%5H`6Zr|ty_gZc#_!WA9E#km_dz;9V0l3kZCS%?xL% z?bovwsnT=pmxh;kB?Pys_u};OPq?$Ts#*`Q>~Ox7hh#)sdZq-2tZOzqw#_}UdxHm* zJY1h@PJO&TjduYsO}kGfh4E?9X0&M~{|2Qu)ewoQAO!M)Wyni48>mleryrI|UH#ak zK=_$rr2@Igr9QdXrBEcGInvmTBlvHQF32V=yb#m6S&%$czsnujPZuAEy2;#OC$?bP0xjKPs5SvA5a5 zL>fRn>$-#cwEKX=cjk2m0<=gsf&s`K!htjMwjFLr+;i?*vK>OnR=c*H;fk_Mj-rQrIQ7DP2ko z;r|N=O7+-TM?Keye-;d_>!%I<6l@&@nEq({*mkve9GyklzwU98HSk|aBJ=IGv3UTP z(f$kWIV}FhJv2c8mgW6i0Sk}Aw;1_;{snL=-VK;$GCPL22h9HbA{6!J&>!(bXgGDT z8U1Ce=ib0}?y2!DvZmrg5A9AStGWSj(|&J|q>tp*Z`fCsR6}(RAp~f84mqmhy}pd! z6Mv*D@XhCk^bDRxlde+hZ_R}1)0Fq~XHY2IYP9Ra(O4b6G6ZWKy_AF8EN^YFK z$XV}yQ`|0yr$4xz%y~ApaBwvnJL3G`z{d4QTBV%14ev2GIBlGF z+#@}USKh5$XCN&)>6m*cZH9N;ZofWSB?EfaK`kMMSKea3nR5bkSpLsFKV~#D#+RMv zt;*DhL660Ak`;nhH%etOTEC7^EblvnBEZ9H03l(8WtFNzg{Re=N?Eqn&1`AWe(xg! zKa58iLp>;{K~3pBX_%bHUe@xP!(QfnG}nCJ{&=(6%|?F`tpq@|t}D_I;|Wa5&n1qV`#;O|&#R(b$aN!p$!T zFwMajtMQm;^@wg{LF)~Zm{@1x5qB35CPI?tZXa=ZS#BS^5p1on zH(&CBuNmd^a>8~xo_*2pbS|I7S8Z987i1Fp^zRd*Gk9%}no4#G|5pHbza}eou)y0f z{{R}Va#@{qP#KWR0{u2F8P}QyD-MVfqPpJS_FWKTtNcye*jL34c`C& delta 200522 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∾KSel7hZM{fA{wA2u>?F^CtotoCj!X)2`pHm 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�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, DRC_DEC_EFFECT_TYPE, (FIXP_DBL)value); break; + case AAC_UNIDRC_ALBUM_MODE: + uniDrcErr = FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_ALBUM_MODE, + (FIXP_DBL)value); + break; + case AAC_TPDEC_CLEAR_BUFFER: errTp = transportDec_SetParam(hTpDec, TPDEC_PARAM_RESET, 1); self->streamInfo.numLostAccessUnits = 0; diff --git a/libDRCdec/include/FDK_drcDecLib.h b/libDRCdec/include/FDK_drcDecLib.h index e187e18..9a99ed1 100644 --- a/libDRCdec/include/FDK_drcDecLib.h +++ b/libDRCdec/include/FDK_drcDecLib.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -134,6 +134,7 @@ typedef enum { DRC_DEC_EFFECT_TYPE, DRC_DEC_EFFECT_TYPE_FALLBACK_CODE, DRC_DEC_LOUDNESS_MEASUREMENT_METHOD, + DRC_DEC_ALBUM_MODE, /* set only system (not user) parameters */ DRC_DEC_DOWNMIX_ID, DRC_DEC_TARGET_CHANNEL_COUNT_REQUESTED, /**< number of output channels diff --git a/libDRCdec/src/FDK_drcDecLib.cpp b/libDRCdec/src/FDK_drcDecLib.cpp index 16b8152..8f3faa0 100644 --- a/libDRCdec/src/FDK_drcDecLib.cpp +++ b/libDRCdec/src/FDK_drcDecLib.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -440,6 +440,12 @@ FDK_drcDec_SetParam(HANDLE_DRC_DECODER hDrcDec, requestValue, &(hDrcDec->selProcInputDiff)); if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; break; + case DRC_DEC_ALBUM_MODE: + sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, + SEL_PROC_ALBUM_MODE, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; default: return DRC_DEC_INVALID_PARAM; } diff --git a/libDRCdec/src/drcDec_selectionProcess.cpp b/libDRCdec/src/drcDec_selectionProcess.cpp index 5653e22..37f5722 100644 --- a/libDRCdec/src/drcDec_selectionProcess.cpp +++ b/libDRCdec/src/drcDec_selectionProcess.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -555,6 +555,11 @@ drcDec_SelectionProcess_SetParam(HANDLE_DRC_SELECTION_PROCESS hInstance, diff |= _compAssign(&pSelProcInput->loudnessMeasurementMethod, requestValueInt); break; + case SEL_PROC_ALBUM_MODE: + if ((requestValueInt < 0) || (requestValueInt > 1)) + return DRCDEC_SELECTION_PROCESS_PARAM_OUT_OF_RANGE; + diff |= _compAssign(&pSelProcInput->albumMode, requestValueInt); + break; case SEL_PROC_DOWNMIX_ID: diff |= _compAssign(&pSelProcInput->targetConfigRequestType, TCRT_DOWNMIX_ID); diff --git a/libDRCdec/src/drcDec_selectionProcess.h b/libDRCdec/src/drcDec_selectionProcess.h index 9e0e3fb..420bae6 100644 --- a/libDRCdec/src/drcDec_selectionProcess.h +++ b/libDRCdec/src/drcDec_selectionProcess.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -146,6 +146,7 @@ typedef enum { SEL_PROC_EFFECT_TYPE, SEL_PROC_EFFECT_TYPE_FALLBACK_CODE, SEL_PROC_LOUDNESS_MEASUREMENT_METHOD, + SEL_PROC_ALBUM_MODE, SEL_PROC_DOWNMIX_ID, SEL_PROC_TARGET_LAYOUT, SEL_PROC_TARGET_CHANNEL_COUNT, From 14f7e1369382c0a399b991648c96fbcf8940efc8 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:03:49 +0100 Subject: [PATCH 15/26] MPEG-4/D DRC unification, loudness norm default at -24 Unify API parameter of MPEG-4/D DRC and introduce rounding to boost/compress setParam function (FDKdec v3.1.1). Enable Loudness Normalization with target loudness -24 by default (FDKdec v3.1.2). Bug: 131255165 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I249a36b4861d0c8d4a0ed2df4dc1f444576bac6b --- documentation/aacDecoder.pdf | Bin 487685 -> 488412 bytes libAACdec/include/aacdecoder_lib.h | 99 ++++++++++++---------- libAACdec/src/aacdec_drc.cpp | 6 +- libAACdec/src/aacdecoder_lib.cpp | 6 +- libDRCdec/src/drcDec_selectionProcess.cpp | 13 ++- 5 files changed, 70 insertions(+), 54 deletions(-) diff --git a/documentation/aacDecoder.pdf b/documentation/aacDecoder.pdf index 5c4ef5e193a99fe5706bdb7e0fd03a3af755c216..eb2a75e1ea692514628a637fb7b34231b6e9c1d5 100644 GIT binary patch delta 49196 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

    T7)puUKs%pswr7JZ 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 delta 48605 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 = FL2FXCONST_DBL(0.0f); pParams->boost = FL2FXCONST_DBL(0.0f); pParams->usrBoost = FL2FXCONST_DBL(0.0f); - pParams->targetRefLevel = -1; + pParams->targetRefLevel = 96; pParams->expiryFrame = AACDEC_DRC_DFLT_EXPIRY_FRAMES; - pParams->applyDigitalNorm = OFF; + pParams->applyDigitalNorm = ON; pParams->applyHeavyCompression = OFF; pParams->usrApplyHeavyCompression = OFF; diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp index d0e4ebc..4046d66 100644 --- a/libAACdec/src/aacdecoder_lib.cpp +++ b/libAACdec/src/aacdecoder_lib.cpp @@ -120,7 +120,7 @@ amm-info@iis.fraunhofer.de /* Decoder library info */ #define AACDECODER_LIB_VL0 3 #define AACDECODER_LIB_VL1 1 -#define AACDECODER_LIB_VL2 0 +#define AACDECODER_LIB_VL2 2 #define AACDECODER_LIB_TITLE "AAC Decoder Lib" #ifdef __ANDROID__ #define AACDECODER_LIB_BUILD_DATE "" @@ -823,11 +823,15 @@ LINKSPEC_CPP AAC_DECODER_ERROR aacDecoder_SetParam( case AAC_DRC_ATTENUATION_FACTOR: /* DRC compression factor (where 0 is no and 127 is max compression) */ errorStatus = aacDecoder_drcSetParam(hDrcInfo, DRC_CUT_SCALE, value); + uniDrcErr = FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_COMPRESS, + value * (FL2FXCONST_DBL(0.5f / 127.0f))); break; case AAC_DRC_BOOST_FACTOR: /* DRC boost factor (where 0 is no and 127 is max boost) */ errorStatus = aacDecoder_drcSetParam(hDrcInfo, DRC_BOOST_SCALE, value); + uniDrcErr = FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_BOOST, + value * (FL2FXCONST_DBL(0.5f / 127.0f))); break; case AAC_DRC_REFERENCE_LEVEL: diff --git a/libDRCdec/src/drcDec_selectionProcess.cpp b/libDRCdec/src/drcDec_selectionProcess.cpp index 37f5722..c33bf74 100644 --- a/libDRCdec/src/drcDec_selectionProcess.cpp +++ b/libDRCdec/src/drcDec_selectionProcess.cpp @@ -603,14 +603,21 @@ drcDec_SelectionProcess_SetParam(HANDLE_DRC_SELECTION_PROCESS hInstance, if ((requestValue < (FIXP_DBL)0) || (requestValue > FL2FXCONST_DBL(1.0f / (float)(1 << 1)))) return DRCDEC_SELECTION_PROCESS_PARAM_OUT_OF_RANGE; - diff |= _compAssign(&pSelProcInput->boost, FX_DBL2FX_SGL(requestValue)); + diff |= _compAssign( + &pSelProcInput->boost, + FX_DBL2FX_SGL( + requestValue + + (FIXP_DBL)(1 << 15))); /* convert to FIXP_SGL with rounding */ break; case SEL_PROC_COMPRESS: if ((requestValue < (FIXP_DBL)0) || (requestValue > FL2FXCONST_DBL(1.0f / (float)(1 << 1)))) return DRCDEC_SELECTION_PROCESS_PARAM_OUT_OF_RANGE; - diff |= - _compAssign(&pSelProcInput->compress, FX_DBL2FX_SGL(requestValue)); + diff |= _compAssign( + &pSelProcInput->compress, + FX_DBL2FX_SGL( + requestValue + + (FIXP_DBL)(1 << 15))); /* convert to FIXP_SGL with rounding */ break; default: return DRCDEC_SELECTION_PROCESS_INVALID_PARAM; From e970ac4c95e2e1016c72caa5218fc8f1bafe58fe Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:08:07 +0100 Subject: [PATCH 16/26] Fix HE-AAC using MPEG-D DRC with implicit SBR signaling. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I97c5d3972528092f627153ad3127c7db977a0e5d --- libAACdec/src/aacdecoder_lib.cpp | 7 ++ libDRCdec/include/FDK_drcDecLib.h | 2 + libDRCdec/src/FDK_drcDecLib.cpp | 162 ++++++++++++++++----------- libDRCdec/src/drcDec_gainDecoder.cpp | 26 ++++- libDRCdec/src/drcDec_gainDecoder.h | 12 +- libDRCdec/src/drcGainDec_init.cpp | 21 +--- libDRCdec/src/drcGainDec_init.h | 5 +- 7 files changed, 140 insertions(+), 95 deletions(-) diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp index 4046d66..86ec899 100644 --- a/libAACdec/src/aacdecoder_lib.cpp +++ b/libAACdec/src/aacdecoder_lib.cpp @@ -1676,6 +1676,13 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern, reverseOutChannelMap[ch] = ch; } + /* Update sampleRate and frameSize. This may be necessary in case of + * implicit SBR signaling */ + FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_SAMPLE_RATE, + self->streamInfo.sampleRate); + FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_FRAME_SIZE, + self->streamInfo.frameSize); + /* If SBR and/or MPS is active, the DRC gains are aligned to the QMF domain signal before the QMF synthesis. Therefore the DRC gains need to be delayed by the QMF synthesis delay. */ diff --git a/libDRCdec/include/FDK_drcDecLib.h b/libDRCdec/include/FDK_drcDecLib.h index 9a99ed1..2d28d23 100644 --- a/libDRCdec/include/FDK_drcDecLib.h +++ b/libDRCdec/include/FDK_drcDecLib.h @@ -142,6 +142,8 @@ typedef enum { choosing an appropriate downmixInstruction */ DRC_DEC_BASE_CHANNEL_COUNT, + DRC_DEC_FRAME_SIZE, + DRC_DEC_SAMPLE_RATE, /* get only system parameters */ DRC_DEC_IS_MULTIBAND_DRC_1, DRC_DEC_IS_MULTIBAND_DRC_2, diff --git a/libDRCdec/src/FDK_drcDecLib.cpp b/libDRCdec/src/FDK_drcDecLib.cpp index 8f3faa0..4f8ebc7 100644 --- a/libDRCdec/src/FDK_drcDecLib.cpp +++ b/libDRCdec/src/FDK_drcDecLib.cpp @@ -336,7 +336,13 @@ FDK_drcDec_Init(HANDLE_DRC_DECODER hDrcDec, const int frameSize, } if (hDrcDec->functionalRange & DRC_DEC_GAIN) { - dErr = drcDec_GainDecoder_Init(hDrcDec->hGainDec, frameSize, sampleRate); + dErr = drcDec_GainDecoder_SetParam(hDrcDec->hGainDec, GAIN_DEC_FRAME_SIZE, + frameSize); + if (dErr) return DRC_DEC_NOT_OK; + dErr = drcDec_GainDecoder_SetParam(hDrcDec->hGainDec, GAIN_DEC_SAMPLE_RATE, + sampleRate); + if (dErr) return DRC_DEC_NOT_OK; + dErr = drcDec_GainDecoder_Init(hDrcDec->hGainDec); if (dErr) return DRC_DEC_NOT_OK; } @@ -377,79 +383,99 @@ DRC_DEC_ERROR FDK_drcDec_SetParam(HANDLE_DRC_DECODER hDrcDec, const DRC_DEC_USERPARAM requestType, const FIXP_DBL requestValue) { + DRC_ERROR dErr = DE_OK; DRCDEC_SELECTION_PROCESS_RETURN sErr = DRCDEC_SELECTION_PROCESS_NO_ERROR; + int invalidParameter = 0; if (hDrcDec == NULL) return DRC_DEC_NOT_OPENED; - if (hDrcDec->functionalRange == DRC_DEC_GAIN) - return DRC_DEC_NOT_OK; /* not supported for DRC_DEC_GAIN. All parameters are - handed over to selection process lib. */ - - switch (requestType) { - case DRC_DEC_BOOST: - sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, - SEL_PROC_BOOST, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_COMPRESS: - sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, - SEL_PROC_COMPRESS, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_LOUDNESS_NORMALIZATION_ON: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_LOUDNESS_NORMALIZATION_ON, - requestValue, &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_TARGET_LOUDNESS: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_TARGET_LOUDNESS, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_EFFECT_TYPE: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_EFFECT_TYPE, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_DOWNMIX_ID: - sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, - SEL_PROC_DOWNMIX_ID, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_TARGET_CHANNEL_COUNT_REQUESTED: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_TARGET_CHANNEL_COUNT, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_BASE_CHANNEL_COUNT: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_BASE_CHANNEL_COUNT, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_NOT_OK; - break; - case DRC_DEC_LOUDNESS_MEASUREMENT_METHOD: - sErr = drcDec_SelectionProcess_SetParam( - hDrcDec->hSelectionProc, SEL_PROC_LOUDNESS_MEASUREMENT_METHOD, - requestValue, &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - case DRC_DEC_ALBUM_MODE: - sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, - SEL_PROC_ALBUM_MODE, requestValue, - &(hDrcDec->selProcInputDiff)); - if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; - break; - default: - return DRC_DEC_INVALID_PARAM; + if (hDrcDec->functionalRange & DRC_DEC_GAIN) { + switch (requestType) { + case DRC_DEC_SAMPLE_RATE: + dErr = drcDec_GainDecoder_SetParam( + hDrcDec->hGainDec, GAIN_DEC_SAMPLE_RATE, (int)requestValue); + if (dErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_FRAME_SIZE: + dErr = drcDec_GainDecoder_SetParam( + hDrcDec->hGainDec, GAIN_DEC_FRAME_SIZE, (int)requestValue); + if (dErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + default: + invalidParameter |= DRC_DEC_GAIN; + } } + if (hDrcDec->functionalRange & DRC_DEC_SELECTION) { + switch (requestType) { + case DRC_DEC_BOOST: + sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, + SEL_PROC_BOOST, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_COMPRESS: + sErr = drcDec_SelectionProcess_SetParam(hDrcDec->hSelectionProc, + SEL_PROC_COMPRESS, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_LOUDNESS_NORMALIZATION_ON: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_LOUDNESS_NORMALIZATION_ON, + requestValue, &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_TARGET_LOUDNESS: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_TARGET_LOUDNESS, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_EFFECT_TYPE: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_EFFECT_TYPE, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_DOWNMIX_ID: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_DOWNMIX_ID, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_TARGET_CHANNEL_COUNT_REQUESTED: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_TARGET_CHANNEL_COUNT, + requestValue, &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_BASE_CHANNEL_COUNT: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_BASE_CHANNEL_COUNT, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_NOT_OK; + break; + case DRC_DEC_LOUDNESS_MEASUREMENT_METHOD: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_LOUDNESS_MEASUREMENT_METHOD, + requestValue, &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + case DRC_DEC_ALBUM_MODE: + sErr = drcDec_SelectionProcess_SetParam( + hDrcDec->hSelectionProc, SEL_PROC_ALBUM_MODE, requestValue, + &(hDrcDec->selProcInputDiff)); + if (sErr) return DRC_DEC_PARAM_OUT_OF_RANGE; + break; + default: + invalidParameter |= DRC_DEC_SELECTION; + } + } + + if (invalidParameter == hDrcDec->functionalRange) + return DRC_DEC_INVALID_PARAM; + /* All parameters need a new start of the selection process */ startSelectionProcess(hDrcDec); diff --git a/libDRCdec/src/drcDec_gainDecoder.cpp b/libDRCdec/src/drcDec_gainDecoder.cpp index ca81fad..9d91267 100644 --- a/libDRCdec/src/drcDec_gainDecoder.cpp +++ b/libDRCdec/src/drcDec_gainDecoder.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -170,11 +170,10 @@ drcDec_GainDecoder_Open(HANDLE_DRC_GAIN_DECODER* phGainDec) { } DRC_ERROR -drcDec_GainDecoder_Init(HANDLE_DRC_GAIN_DECODER hGainDec, const int frameSize, - const int sampleRate) { +drcDec_GainDecoder_Init(HANDLE_DRC_GAIN_DECODER hGainDec) { DRC_ERROR err = DE_OK; - err = initGainDec(hGainDec, frameSize, sampleRate); + err = initGainDec(hGainDec); if (err) return err; initDrcGainBuffers(hGainDec->frameSize, &hGainDec->drcGainBuffers); @@ -182,6 +181,25 @@ drcDec_GainDecoder_Init(HANDLE_DRC_GAIN_DECODER hGainDec, const int frameSize, return err; } +DRC_ERROR +drcDec_GainDecoder_SetParam(HANDLE_DRC_GAIN_DECODER hGainDec, + const GAIN_DEC_PARAM paramType, + const int paramValue) { + switch (paramType) { + case GAIN_DEC_FRAME_SIZE: + if (paramValue < 0) return DE_PARAM_OUT_OF_RANGE; + hGainDec->frameSize = paramValue; + break; + case GAIN_DEC_SAMPLE_RATE: + if (paramValue < 0) return DE_PARAM_OUT_OF_RANGE; + hGainDec->deltaTminDefault = getDeltaTmin(paramValue); + break; + default: + return DE_PARAM_INVALID; + } + return DE_OK; +} + DRC_ERROR drcDec_GainDecoder_SetCodecDependentParameters( HANDLE_DRC_GAIN_DECODER hGainDec, const DELAY_MODE delayMode, diff --git a/libDRCdec/src/drcDec_gainDecoder.h b/libDRCdec/src/drcDec_gainDecoder.h index 2f4df4c..394b455 100644 --- a/libDRCdec/src/drcDec_gainDecoder.h +++ b/libDRCdec/src/drcDec_gainDecoder.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -134,6 +134,8 @@ typedef enum { GAIN_DEC_DRC2_DRC3 } GAIN_DEC_LOCATION; +typedef enum { GAIN_DEC_FRAME_SIZE, GAIN_DEC_SAMPLE_RATE } GAIN_DEC_PARAM; + typedef struct { FIXP_DBL gainLin; /* e = 7 */ SHORT time; @@ -195,8 +197,12 @@ DRC_ERROR drcDec_GainDecoder_Open(HANDLE_DRC_GAIN_DECODER* phGainDec); DRC_ERROR -drcDec_GainDecoder_Init(HANDLE_DRC_GAIN_DECODER hGainDec, const int frameSize, - const int sampleRate); +drcDec_GainDecoder_Init(HANDLE_DRC_GAIN_DECODER hGainDec); + +DRC_ERROR +drcDec_GainDecoder_SetParam(HANDLE_DRC_GAIN_DECODER hGainDec, + const GAIN_DEC_PARAM paramType, + const int paramValue); DRC_ERROR drcDec_GainDecoder_SetCodecDependentParameters( diff --git a/libDRCdec/src/drcGainDec_init.cpp b/libDRCdec/src/drcGainDec_init.cpp index c9f87d7..89d0f55 100644 --- a/libDRCdec/src/drcGainDec_init.cpp +++ b/libDRCdec/src/drcGainDec_init.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -184,24 +184,11 @@ static DRC_ERROR _generateDrcInstructionsDerivedData( } DRC_ERROR -initGainDec(HANDLE_DRC_GAIN_DECODER hGainDec, const int frameSize, - const int sampleRate) { +initGainDec(HANDLE_DRC_GAIN_DECODER hGainDec) { int i, j, k; - if (frameSize < 1) { - return DE_NOT_OK; - } - - hGainDec->frameSize = frameSize; - - if (hGainDec->frameSize * 1000 < sampleRate) { - return DE_NOT_OK; - } - - hGainDec->deltaTminDefault = getDeltaTmin(sampleRate); - if (hGainDec->deltaTminDefault > hGainDec->frameSize) { - return DE_NOT_OK; - } + /* sanity check */ + if (hGainDec->deltaTminDefault > hGainDec->frameSize) return DE_NOT_OK; for (i = 0; i < MAX_ACTIVE_DRCS; i++) { for (j = 0; j < 8; j++) { diff --git a/libDRCdec/src/drcGainDec_init.h b/libDRCdec/src/drcGainDec_init.h index 9215bc3..c0b9853 100644 --- a/libDRCdec/src/drcGainDec_init.h +++ b/libDRCdec/src/drcGainDec_init.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -104,8 +104,7 @@ amm-info@iis.fraunhofer.de #define DRCGAINDEC_INIT_H DRC_ERROR -initGainDec(HANDLE_DRC_GAIN_DECODER hGainDec, const int frameSize, - const int sampleRate); +initGainDec(HANDLE_DRC_GAIN_DECODER hGainDec); void initDrcGainBuffers(const int frameSize, DRC_GAIN_BUFFERS* drcGainBuffers); From 89ca476e525187ca01bca3cfd87785d860e7bde8 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:08:40 +0100 Subject: [PATCH 17/26] Fetch multiple samples of input channels from encoder input buffer. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I548c62efcbe2629479f671befd4388895d835de7 --- libAACenc/src/aacenc_lib.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libAACenc/src/aacenc_lib.cpp b/libAACenc/src/aacenc_lib.cpp index 08cd57a..0f0094f 100644 --- a/libAACenc/src/aacenc_lib.cpp +++ b/libAACenc/src/aacenc_lib.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -1761,6 +1761,10 @@ AACENC_ERROR aacEncEncode(const HANDLE_AACENCODER hAacEncoder, hAacEncoder->inputBuffer + (hAacEncoder->inputBufferOffset + hAacEncoder->nSamplesRead) / hAacEncoder->aacConfig.nChannels; + newSamples -= + (newSamples % + hAacEncoder->extParam + .nChannels); /* process multiple samples of input channels */ /* Copy new input samples to internal buffer */ if (inBufDesc->bufElSizes[idx] == (INT)sizeof(INT_PCM)) { From 1b5457fe93c4082be212073e166a35a7f0faba77 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:09:03 +0100 Subject: [PATCH 18/26] Fix out of sync function declaration of scaleValues(). Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I1b9a204c52aee20adabc1baee7f5e5cdbf1ee39e --- libFDK/include/scale.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libFDK/include/scale.h b/libFDK/include/scale.h index 30fa089..655ccaf 100644 --- a/libFDK/include/scale.h +++ b/libFDK/include/scale.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -123,7 +123,7 @@ void scaleValues(FIXP_DBL *dst, const FIXP_DBL *src, INT len, INT scalefactor); #if (SAMPLE_BITS == 16) void scaleValues(FIXP_PCM *dst, const FIXP_DBL *src, INT len, INT scalefactor); #endif -void scaleValues(FIXP_PCM *dst, const FIXP_SGL *src, INT len, INT scalefactor); +void scaleValues(FIXP_SGL *dst, const FIXP_SGL *src, INT len, INT scalefactor); void scaleCplxValues(FIXP_DBL *r_dst, FIXP_DBL *i_dst, const FIXP_DBL *r_src, const FIXP_DBL *i_src, INT len, INT scalefactor); void scaleValuesWithFactor(FIXP_DBL *vector, FIXP_DBL factor, INT len, From ce00007148de0449c04d02e7e586e819e0237fb8 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:09:13 +0100 Subject: [PATCH 19/26] Increase scale factor to avoid overflows in function factorCLD(). Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I8f5f67375b3413cce855bddc18ce0546caa01062 --- libSACdec/src/sac_rom.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libSACdec/src/sac_rom.h b/libSACdec/src/sac_rom.h index d366fb6..552585b 100644 --- a/libSACdec/src/sac_rom.h +++ b/libSACdec/src/sac_rom.h @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -147,7 +147,7 @@ amm-info@iis.fraunhofer.de #define CLIP_PROTECT_GAIN_1(x) FL2FXCONST_CFG(((x) / (float)(1 << 1))) #define CLIP_PROTECT_GAIN_2(x) FL2FXCONST_CFG(((x) / (float)(1 << 2))) -#define SF_CLD_C1C2 (8) +#define SF_CLD_C1C2 (9) extern const FIXP_CFG dequantCPC__FDK[]; extern const FIXP_CFG dequantICC__FDK[8]; From e51063ca54212efa9a2074ec02626999ced2fb74 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:09:25 +0100 Subject: [PATCH 20/26] Avoid -1.0 autocorrelation input data. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I2d4ccf9ee666a5533417ea98302de4a01b74c5ce --- libSBRdec/src/lpp_tran.cpp | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/libSBRdec/src/lpp_tran.cpp b/libSBRdec/src/lpp_tran.cpp index 2ef07eb..6acb626 100644 --- a/libSBRdec/src/lpp_tran.cpp +++ b/libSBRdec/src/lpp_tran.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -446,8 +446,26 @@ void lppTransposer( pSettings->nCols) + lowBandShift); } - dynamicScale = fixMax( - 0, dynamicScale - 1); /* one additional bit headroom to prevent -1.0 */ + + if (dynamicScale == 0) { + /* In this special case the available headroom bits as well as + ovLowBandShift and lowBandShift are zero. The spectrum is limited to + prevent -1.0, so negative values for dynamicScale can be avoided. */ + for (i = 0; i < (LPC_ORDER + pSettings->overlap + pSettings->nCols); + i++) { + lowBandReal[i] = fixMax(lowBandReal[i], (FIXP_DBL)0x80000001); + } + if (!useLP) { + for (i = 0; i < (LPC_ORDER + pSettings->overlap + pSettings->nCols); + i++) { + lowBandImag[i] = fixMax(lowBandImag[i], (FIXP_DBL)0x80000001); + } + } + } else { + dynamicScale = + fixMax(0, dynamicScale - + 1); /* one additional bit headroom to prevent -1.0 */ + } /* Scale temporal QMF buffer. From 69a5c189ad088715d1fac7140c57248d747d6a2a Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:09:45 +0100 Subject: [PATCH 21/26] Improve accuracy of division in calcSubbandGain(). Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I3beeda23355ae1200d9f55c9e8cd1cc6bc899153 --- libSBRdec/src/env_calc.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/libSBRdec/src/env_calc.cpp b/libSBRdec/src/env_calc.cpp index cb1474f..11b7eca 100644 --- a/libSBRdec/src/env_calc.cpp +++ b/libSBRdec/src/env_calc.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -2325,7 +2325,15 @@ static void calcSubbandGain( } /* gain = nrgRef / B */ - FDK_divide_MantExp(nrgRef, nrgRef_e, b, b_e, ptrNrgGain, ptrNrgGain_e); + INT result_exp = 0; + *ptrNrgGain = fDivNorm(nrgRef, b, &result_exp); + *ptrNrgGain_e = (SCHAR)result_exp + (nrgRef_e - b_e); + + /* There could be a one bit diffs. This is important to compensate, + because later in the code values are compared by exponent only. */ + int headroom = CountLeadingBits(*ptrNrgGain); + *ptrNrgGain <<= headroom; + *ptrNrgGain_e -= headroom; } } From 2ef020c93acfba17b51411a5abafe20c83f3097c Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:09:55 +0100 Subject: [PATCH 22/26] Increase scale factor gain in TES tool. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I498be80902da32944ab456436689ca4aba42d3f6 --- libSBRdec/src/env_calc.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libSBRdec/src/env_calc.cpp b/libSBRdec/src/env_calc.cpp index 11b7eca..f72e8c6 100644 --- a/libSBRdec/src/env_calc.cpp +++ b/libSBRdec/src/env_calc.cpp @@ -493,7 +493,7 @@ static void mapSineFlags( } } -#define INTER_TES_SF_CHANGE 3 +#define INTER_TES_SF_CHANGE 4 typedef struct { FIXP_DBL subsample_power_low[(((1024) / (32) * (4) / 2) + (3 * (4)))]; From 818743f718cd1c8f3ec4ab5cb36aa73c0117e9c7 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:10:05 +0100 Subject: [PATCH 23/26] Improve random phase table accuracy. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: Ifca82aec87c0d21871d1f181b1be635c419433ee --- libSBRdec/src/env_calc.cpp | 60 +- libSBRdec/src/sbr_rom.cpp | 1538 ++++++++++++------------------------ 2 files changed, 536 insertions(+), 1062 deletions(-) diff --git a/libSBRdec/src/env_calc.cpp b/libSBRdec/src/env_calc.cpp index f72e8c6..1242833 100644 --- a/libSBRdec/src/env_calc.cpp +++ b/libSBRdec/src/env_calc.cpp @@ -2439,8 +2439,7 @@ static void adjustTimeSlot_EldGrid( sbNoise = *pNoiseLevel++; if (((INT)sineLevel_curr | noNoiseFlag) == 0) { signalReal += - (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[phaseIndex][0], sbNoise) - << 4); + fMult(FDK_sbrDecoder_sbr_randomPhase[phaseIndex][0], sbNoise); } signalReal += sineLevel_curr * p_harmonicPhase[0]; signalReal = @@ -2474,8 +2473,7 @@ static void adjustTimeSlot_EldGrid( sbNoise = *pNoiseLevel++; if (((INT)sineLevel_curr | noNoiseFlag) == 0) { signalReal += - (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[phaseIndex][0], sbNoise) - << 4); + fMult(FDK_sbrDecoder_sbr_randomPhase[phaseIndex][0], sbNoise); } signalReal += sineLevel_curr * p_harmonicPhase[0]; *ptrReal++ = signalReal; @@ -2535,8 +2533,7 @@ static void adjustTimeSlotLC( else if (!noNoiseFlag) /* Add noisefloor to the amplified signal */ signalReal += - (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], pNoiseLevel[0]) - << 4); + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], pNoiseLevel[0]); { if (!(harmIndex & 0x1)) { @@ -2583,9 +2580,8 @@ static void adjustTimeSlotLC( !noNoiseFlag) { /* Add noisefloor to the amplified signal */ index &= (SBR_NF_NO_RANDOM_VAL - 1); - signalReal += (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], - pNoiseLevel[0]) - << 4); + signalReal += + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], pNoiseLevel[0]); } /* The next multiplication constitutes the actual envelope adjustment of @@ -2610,9 +2606,8 @@ static void adjustTimeSlotLC( else if (!noNoiseFlag) { /* Add noisefloor to the amplified signal */ index &= (SBR_NF_NO_RANDOM_VAL - 1); - signalReal += (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], - pNoiseLevel[0]) - << 4); + signalReal += + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], pNoiseLevel[0]); } pNoiseLevel++; @@ -2641,10 +2636,8 @@ static void adjustTimeSlotLC( else if (!noNoiseFlag) { /* Add noisefloor to the amplified signal */ index &= (SBR_NF_NO_RANDOM_VAL - 1); - signalReal = - signalReal + - (fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], pNoiseLevel[0]) - << 4); + signalReal = signalReal + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], + pNoiseLevel[0]); } if (!(harmIndex & 0x1)) { @@ -2749,11 +2742,9 @@ static void adjustTimeSlotHQ_GainAndNoise( /* Add noisefloor to the amplified signal */ index &= (SBR_NF_NO_RANDOM_VAL - 1); noiseReal = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise) - << 4; + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise); noiseImag = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise) - << 4; + fMult(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise); *ptrReal++ = (signalReal + noiseReal); *ptrImag++ = (signalImag + noiseImag); } @@ -2771,13 +2762,12 @@ static void adjustTimeSlotHQ_GainAndNoise( smoothedNoise = noiseLevel[k]; index &= (SBR_NF_NO_RANDOM_VAL - 1); noiseReal = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise); + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise); noiseImag = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise); + fMult(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise); - /* FDK_sbrDecoder_sbr_randomPhase is downscaled by 2^3 */ - signalReal += noiseReal << 4; - signalImag += noiseImag << 4; + signalReal += noiseReal; + signalImag += noiseImag; } *ptrReal++ = signalReal; *ptrImag++ = signalImag; @@ -2952,13 +2942,10 @@ static void adjustTimeSlotHQ( } else { /* Add noisefloor to the amplified signal */ index &= (SBR_NF_NO_RANDOM_VAL - 1); - /* FDK_sbrDecoder_sbr_randomPhase is downscaled by 2^3 */ noiseReal = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise) - << 4; + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise); noiseImag = - fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise) - << 4; + fMult(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise); *ptrReal++ = (signalReal + noiseReal); *ptrImag++ = (signalImag + noiseImag); } @@ -3000,14 +2987,13 @@ static void adjustTimeSlotHQ( /* Add noisefloor to the amplified signal */ smoothedNoise = noiseLevel[k]; index &= (SBR_NF_NO_RANDOM_VAL - 1); - noiseReal = fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][0], - smoothedNoise); - noiseImag = fMultDiv2(FDK_sbrDecoder_sbr_randomPhase[index][1], - smoothedNoise); + noiseReal = + fMult(FDK_sbrDecoder_sbr_randomPhase[index][0], smoothedNoise); + noiseImag = + fMult(FDK_sbrDecoder_sbr_randomPhase[index][1], smoothedNoise); - /* FDK_sbrDecoder_sbr_randomPhase is downscaled by 2^3 */ - signalReal += noiseReal << 4; - signalImag += noiseImag << 4; + signalReal += noiseReal; + signalImag += noiseImag; } } *ptrReal++ = signalReal; diff --git a/libSBRdec/src/sbr_rom.cpp b/libSBRdec/src/sbr_rom.cpp index 8a6688a..4c7e74a 100644 --- a/libSBRdec/src/sbr_rom.cpp +++ b/libSBRdec/src/sbr_rom.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -241,1030 +241,518 @@ const FIXP_SGL FDK_sbrDecoder_sbr_smoothFilter[4] = { random numbers. */ const FIXP_SGL FDK_sbrDecoder_sbr_randomPhase[SBR_NF_NO_RANDOM_VAL][2] = { - {FL2FXCONST_SGL(-0.99948153278296f / 8.0), - FL2FXCONST_SGL(-0.59483417516607f / 8.0)}, - {FL2FXCONST_SGL(0.97113454393991f / 8.0), - FL2FXCONST_SGL(-0.67528515225647f / 8.0)}, - {FL2FXCONST_SGL(0.14130051758487f / 8.0), - FL2FXCONST_SGL(-0.95090983575689f / 8.0)}, - {FL2FXCONST_SGL(-0.47005496701697f / 8.0), - FL2FXCONST_SGL(-0.37340549728647f / 8.0)}, - {FL2FXCONST_SGL(0.80705063769351f / 8.0), - FL2FXCONST_SGL(0.29653668284408f / 8.0)}, - {FL2FXCONST_SGL(-0.38981478896926f / 8.0), - FL2FXCONST_SGL(0.89572605717087f / 8.0)}, - {FL2FXCONST_SGL(-0.01053049862020f / 8.0), - FL2FXCONST_SGL(-0.66959058036166f / 8.0)}, - {FL2FXCONST_SGL(-0.91266367957293f / 8.0), - FL2FXCONST_SGL(-0.11522938140034f / 8.0)}, - {FL2FXCONST_SGL(0.54840422910309f / 8.0), - FL2FXCONST_SGL(0.75221367176302f / 8.0)}, - {FL2FXCONST_SGL(0.40009252867955f / 8.0), - FL2FXCONST_SGL(-0.98929400334421f / 8.0)}, - {FL2FXCONST_SGL(-0.99867974711855f / 8.0), - FL2FXCONST_SGL(-0.88147068645358f / 8.0)}, - {FL2FXCONST_SGL(-0.95531076805040f / 8.0), - FL2FXCONST_SGL(0.90908757154593f / 8.0)}, - {FL2FXCONST_SGL(-0.45725933317144f / 8.0), - FL2FXCONST_SGL(-0.56716323646760f / 8.0)}, - {FL2FXCONST_SGL(-0.72929675029275f / 8.0), - FL2FXCONST_SGL(-0.98008272727324f / 8.0)}, - {FL2FXCONST_SGL(0.75622801399036f / 8.0), - FL2FXCONST_SGL(0.20950329995549f / 8.0)}, - {FL2FXCONST_SGL(0.07069442601050f / 8.0), - FL2FXCONST_SGL(-0.78247898470706f / 8.0)}, - {FL2FXCONST_SGL(0.74496252926055f / 8.0), - FL2FXCONST_SGL(-0.91169004445807f / 8.0)}, - {FL2FXCONST_SGL(-0.96440182703856f / 8.0), - FL2FXCONST_SGL(-0.94739918296622f / 8.0)}, - {FL2FXCONST_SGL(0.30424629369539f / 8.0), - FL2FXCONST_SGL(-0.49438267012479f / 8.0)}, - {FL2FXCONST_SGL(0.66565033746925f / 8.0), - FL2FXCONST_SGL(0.64652935542491f / 8.0)}, - {FL2FXCONST_SGL(0.91697008020594f / 8.0), - FL2FXCONST_SGL(0.17514097332009f / 8.0)}, - {FL2FXCONST_SGL(-0.70774918760427f / 8.0), - FL2FXCONST_SGL(0.52548653416543f / 8.0)}, - {FL2FXCONST_SGL(-0.70051415345560f / 8.0), - FL2FXCONST_SGL(-0.45340028808763f / 8.0)}, - {FL2FXCONST_SGL(-0.99496513054797f / 8.0), - FL2FXCONST_SGL(-0.90071908066973f / 8.0)}, - {FL2FXCONST_SGL(0.98164490790123f / 8.0), - FL2FXCONST_SGL(-0.77463155528697f / 8.0)}, - {FL2FXCONST_SGL(-0.54671580548181f / 8.0), - FL2FXCONST_SGL(-0.02570928536004f / 8.0)}, - {FL2FXCONST_SGL(-0.01689629065389f / 8.0), - FL2FXCONST_SGL(0.00287506445732f / 8.0)}, - {FL2FXCONST_SGL(-0.86110349531986f / 8.0), - FL2FXCONST_SGL(0.42548583726477f / 8.0)}, - {FL2FXCONST_SGL(-0.98892980586032f / 8.0), - FL2FXCONST_SGL(-0.87881132267556f / 8.0)}, - {FL2FXCONST_SGL(0.51756627678691f / 8.0), - FL2FXCONST_SGL(0.66926784710139f / 8.0)}, - {FL2FXCONST_SGL(-0.99635026409640f / 8.0), - FL2FXCONST_SGL(-0.58107730574765f / 8.0)}, - {FL2FXCONST_SGL(-0.99969370862163f / 8.0), - FL2FXCONST_SGL(0.98369989360250f / 8.0)}, - {FL2FXCONST_SGL(0.55266258627194f / 8.0), - FL2FXCONST_SGL(0.59449057465591f / 8.0)}, - {FL2FXCONST_SGL(0.34581177741673f / 8.0), - FL2FXCONST_SGL(0.94879421061866f / 8.0)}, - {FL2FXCONST_SGL(0.62664209577999f / 8.0), - FL2FXCONST_SGL(-0.74402970906471f / 8.0)}, - {FL2FXCONST_SGL(-0.77149701404973f / 8.0), - FL2FXCONST_SGL(-0.33883658042801f / 8.0)}, - {FL2FXCONST_SGL(-0.91592244254432f / 8.0), - FL2FXCONST_SGL(0.03687901376713f / 8.0)}, - {FL2FXCONST_SGL(-0.76285492357887f / 8.0), - FL2FXCONST_SGL(-0.91371867919124f / 8.0)}, - {FL2FXCONST_SGL(0.79788337195331f / 8.0), - FL2FXCONST_SGL(-0.93180971199849f / 8.0)}, - {FL2FXCONST_SGL(0.54473080610200f / 8.0), - FL2FXCONST_SGL(-0.11919206037186f / 8.0)}, - {FL2FXCONST_SGL(-0.85639281671058f / 8.0), - FL2FXCONST_SGL(0.42429854760451f / 8.0)}, - {FL2FXCONST_SGL(-0.92882402971423f / 8.0), - FL2FXCONST_SGL(0.27871809078609f / 8.0)}, - {FL2FXCONST_SGL(-0.11708371046774f / 8.0), - FL2FXCONST_SGL(-0.99800843444966f / 8.0)}, - {FL2FXCONST_SGL(0.21356749817493f / 8.0), - FL2FXCONST_SGL(-0.90716295627033f / 8.0)}, - {FL2FXCONST_SGL(-0.76191692573909f / 8.0), - FL2FXCONST_SGL(0.99768118356265f / 8.0)}, - {FL2FXCONST_SGL(0.98111043100884f / 8.0), - FL2FXCONST_SGL(-0.95854459734407f / 8.0)}, - {FL2FXCONST_SGL(-0.85913269895572f / 8.0), - FL2FXCONST_SGL(0.95766566168880f / 8.0)}, - {FL2FXCONST_SGL(-0.93307242253692f / 8.0), - FL2FXCONST_SGL(0.49431757696466f / 8.0)}, - {FL2FXCONST_SGL(0.30485754879632f / 8.0), - FL2FXCONST_SGL(-0.70540034357529f / 8.0)}, - {FL2FXCONST_SGL(0.85289650925190f / 8.0), - FL2FXCONST_SGL(0.46766131791044f / 8.0)}, - {FL2FXCONST_SGL(0.91328082618125f / 8.0), - FL2FXCONST_SGL(-0.99839597361769f / 8.0)}, - {FL2FXCONST_SGL(-0.05890199924154f / 8.0), - FL2FXCONST_SGL(0.70741827819497f / 8.0)}, - {FL2FXCONST_SGL(0.28398686150148f / 8.0), - FL2FXCONST_SGL(0.34633555702188f / 8.0)}, - {FL2FXCONST_SGL(0.95258164539612f / 8.0), - FL2FXCONST_SGL(-0.54893416026939f / 8.0)}, - {FL2FXCONST_SGL(-0.78566324168507f / 8.0), - FL2FXCONST_SGL(-0.75568541079691f / 8.0)}, - {FL2FXCONST_SGL(-0.95789495447877f / 8.0), - FL2FXCONST_SGL(-0.20423194696966f / 8.0)}, - {FL2FXCONST_SGL(0.82411158711197f / 8.0), - FL2FXCONST_SGL(0.96654618432562f / 8.0)}, - {FL2FXCONST_SGL(-0.65185446735885f / 8.0), - FL2FXCONST_SGL(-0.88734990773289f / 8.0)}, - {FL2FXCONST_SGL(-0.93643603134666f / 8.0), - FL2FXCONST_SGL(0.99870790442385f / 8.0)}, - {FL2FXCONST_SGL(0.91427159529618f / 8.0), - FL2FXCONST_SGL(-0.98290505544444f / 8.0)}, - {FL2FXCONST_SGL(-0.70395684036886f / 8.0), - FL2FXCONST_SGL(0.58796798221039f / 8.0)}, - {FL2FXCONST_SGL(0.00563771969365f / 8.0), - FL2FXCONST_SGL(0.61768196727244f / 8.0)}, - {FL2FXCONST_SGL(0.89065051931895f / 8.0), - FL2FXCONST_SGL(0.52783352697585f / 8.0)}, - {FL2FXCONST_SGL(-0.68683707712762f / 8.0), - FL2FXCONST_SGL(0.80806944710339f / 8.0)}, - {FL2FXCONST_SGL(0.72165342518718f / 8.0), - FL2FXCONST_SGL(-0.69259857349564f / 8.0)}, - {FL2FXCONST_SGL(-0.62928247730667f / 8.0), - FL2FXCONST_SGL(0.13627037407335f / 8.0)}, - {FL2FXCONST_SGL(0.29938434065514f / 8.0), - FL2FXCONST_SGL(-0.46051329682246f / 8.0)}, - {FL2FXCONST_SGL(-0.91781958879280f / 8.0), - FL2FXCONST_SGL(-0.74012716684186f / 8.0)}, - {FL2FXCONST_SGL(0.99298717043688f / 8.0), - FL2FXCONST_SGL(0.40816610075661f / 8.0)}, - {FL2FXCONST_SGL(0.82368298622748f / 8.0), - FL2FXCONST_SGL(-0.74036047190173f / 8.0)}, - {FL2FXCONST_SGL(-0.98512833386833f / 8.0), - FL2FXCONST_SGL(-0.99972330709594f / 8.0)}, - {FL2FXCONST_SGL(-0.95915368242257f / 8.0), - FL2FXCONST_SGL(-0.99237800466040f / 8.0)}, - {FL2FXCONST_SGL(-0.21411126572790f / 8.0), - FL2FXCONST_SGL(-0.93424819052545f / 8.0)}, - {FL2FXCONST_SGL(-0.68821476106884f / 8.0), - FL2FXCONST_SGL(-0.26892306315457f / 8.0)}, - {FL2FXCONST_SGL(0.91851997982317f / 8.0), - FL2FXCONST_SGL(0.09358228901785f / 8.0)}, - {FL2FXCONST_SGL(-0.96062769559127f / 8.0), - FL2FXCONST_SGL(0.36099095133739f / 8.0)}, - {FL2FXCONST_SGL(0.51646184922287f / 8.0), - FL2FXCONST_SGL(-0.71373332873917f / 8.0)}, - {FL2FXCONST_SGL(0.61130721139669f / 8.0), - FL2FXCONST_SGL(0.46950141175917f / 8.0)}, - {FL2FXCONST_SGL(0.47336129371299f / 8.0), - FL2FXCONST_SGL(-0.27333178296162f / 8.0)}, - {FL2FXCONST_SGL(0.90998308703519f / 8.0), - FL2FXCONST_SGL(0.96715662938132f / 8.0)}, - {FL2FXCONST_SGL(0.44844799194357f / 8.0), - FL2FXCONST_SGL(0.99211574628306f / 8.0)}, - {FL2FXCONST_SGL(0.66614891079092f / 8.0), - FL2FXCONST_SGL(0.96590176169121f / 8.0)}, - {FL2FXCONST_SGL(0.74922239129237f / 8.0), - FL2FXCONST_SGL(-0.89879858826087f / 8.0)}, - {FL2FXCONST_SGL(-0.99571588506485f / 8.0), - FL2FXCONST_SGL(0.52785521494349f / 8.0)}, - {FL2FXCONST_SGL(0.97401082477563f / 8.0), - FL2FXCONST_SGL(-0.16855870075190f / 8.0)}, - {FL2FXCONST_SGL(0.72683747733879f / 8.0), - FL2FXCONST_SGL(-0.48060774432251f / 8.0)}, - {FL2FXCONST_SGL(0.95432193457128f / 8.0), - FL2FXCONST_SGL(0.68849603408441f / 8.0)}, - {FL2FXCONST_SGL(-0.72962208425191f / 8.0), - FL2FXCONST_SGL(-0.76608443420917f / 8.0)}, - {FL2FXCONST_SGL(-0.85359479233537f / 8.0), - FL2FXCONST_SGL(0.88738125901579f / 8.0)}, - {FL2FXCONST_SGL(-0.81412430338535f / 8.0), - FL2FXCONST_SGL(-0.97480768049637f / 8.0)}, - {FL2FXCONST_SGL(-0.87930772356786f / 8.0), - FL2FXCONST_SGL(0.74748307690436f / 8.0)}, - {FL2FXCONST_SGL(-0.71573331064977f / 8.0), - FL2FXCONST_SGL(-0.98570608178923f / 8.0)}, - {FL2FXCONST_SGL(0.83524300028228f / 8.0), - FL2FXCONST_SGL(0.83702537075163f / 8.0)}, - {FL2FXCONST_SGL(-0.48086065601423f / 8.0), - FL2FXCONST_SGL(-0.98848504923531f / 8.0)}, - {FL2FXCONST_SGL(0.97139128574778f / 8.0), - FL2FXCONST_SGL(0.80093621198236f / 8.0)}, - {FL2FXCONST_SGL(0.51992825347895f / 8.0), - FL2FXCONST_SGL(0.80247631400510f / 8.0)}, - {FL2FXCONST_SGL(-0.00848591195325f / 8.0), - FL2FXCONST_SGL(-0.76670128000486f / 8.0)}, - {FL2FXCONST_SGL(-0.70294374303036f / 8.0), - FL2FXCONST_SGL(0.55359910445577f / 8.0)}, - {FL2FXCONST_SGL(-0.95894428168140f / 8.0), - FL2FXCONST_SGL(-0.43265504344783f / 8.0)}, - {FL2FXCONST_SGL(0.97079252950321f / 8.0), - FL2FXCONST_SGL(0.09325857238682f / 8.0)}, - {FL2FXCONST_SGL(-0.92404293670797f / 8.0), - FL2FXCONST_SGL(0.85507704027855f / 8.0)}, - {FL2FXCONST_SGL(-0.69506469500450f / 8.0), - FL2FXCONST_SGL(0.98633412625459f / 8.0)}, - {FL2FXCONST_SGL(0.26559203620024f / 8.0), - FL2FXCONST_SGL(0.73314307966524f / 8.0)}, - {FL2FXCONST_SGL(0.28038443336943f / 8.0), - FL2FXCONST_SGL(0.14537913654427f / 8.0)}, - {FL2FXCONST_SGL(-0.74138124825523f / 8.0), - FL2FXCONST_SGL(0.99310339807762f / 8.0)}, - {FL2FXCONST_SGL(-0.01752795995444f / 8.0), - FL2FXCONST_SGL(-0.82616635284178f / 8.0)}, - {FL2FXCONST_SGL(-0.55126773094930f / 8.0), - FL2FXCONST_SGL(-0.98898543862153f / 8.0)}, - {FL2FXCONST_SGL(0.97960898850996f / 8.0), - FL2FXCONST_SGL(-0.94021446752851f / 8.0)}, - {FL2FXCONST_SGL(-0.99196309146936f / 8.0), - FL2FXCONST_SGL(0.67019017358456f / 8.0)}, - {FL2FXCONST_SGL(-0.67684928085260f / 8.0), - FL2FXCONST_SGL(0.12631491649378f / 8.0)}, - {FL2FXCONST_SGL(0.09140039465500f / 8.0), - FL2FXCONST_SGL(-0.20537731453108f / 8.0)}, - {FL2FXCONST_SGL(-0.71658965751996f / 8.0), - FL2FXCONST_SGL(-0.97788200391224f / 8.0)}, - {FL2FXCONST_SGL(0.81014640078925f / 8.0), - FL2FXCONST_SGL(0.53722648362443f / 8.0)}, - {FL2FXCONST_SGL(0.40616991671205f / 8.0), - FL2FXCONST_SGL(-0.26469008598449f / 8.0)}, - {FL2FXCONST_SGL(-0.67680188682972f / 8.0), - FL2FXCONST_SGL(0.94502052337695f / 8.0)}, - {FL2FXCONST_SGL(0.86849774348749f / 8.0), - FL2FXCONST_SGL(-0.18333598647899f / 8.0)}, - {FL2FXCONST_SGL(-0.99500381284851f / 8.0), - FL2FXCONST_SGL(-0.02634122068550f / 8.0)}, - {FL2FXCONST_SGL(0.84329189340667f / 8.0), - FL2FXCONST_SGL(0.10406957462213f / 8.0)}, - {FL2FXCONST_SGL(-0.09215968531446f / 8.0), - FL2FXCONST_SGL(0.69540012101253f / 8.0)}, - {FL2FXCONST_SGL(0.99956173327206f / 8.0), - FL2FXCONST_SGL(-0.12358542001404f / 8.0)}, - {FL2FXCONST_SGL(-0.79732779473535f / 8.0), - FL2FXCONST_SGL(-0.91582524736159f / 8.0)}, - {FL2FXCONST_SGL(0.96349973642406f / 8.0), - FL2FXCONST_SGL(0.96640458041000f / 8.0)}, - {FL2FXCONST_SGL(-0.79942778496547f / 8.0), - FL2FXCONST_SGL(0.64323902822857f / 8.0)}, - {FL2FXCONST_SGL(-0.11566039853896f / 8.0), - FL2FXCONST_SGL(0.28587846253726f / 8.0)}, - {FL2FXCONST_SGL(-0.39922954514662f / 8.0), - FL2FXCONST_SGL(0.94129601616966f / 8.0)}, - {FL2FXCONST_SGL(0.99089197565987f / 8.0), - FL2FXCONST_SGL(-0.92062625581587f / 8.0)}, - {FL2FXCONST_SGL(0.28631285179909f / 8.0), - FL2FXCONST_SGL(-0.91035047143603f / 8.0)}, - {FL2FXCONST_SGL(-0.83302725605608f / 8.0), - FL2FXCONST_SGL(-0.67330410892084f / 8.0)}, - {FL2FXCONST_SGL(0.95404443402072f / 8.0), - FL2FXCONST_SGL(0.49162765398743f / 8.0)}, - {FL2FXCONST_SGL(-0.06449863579434f / 8.0), - FL2FXCONST_SGL(0.03250560813135f / 8.0)}, - {FL2FXCONST_SGL(-0.99575054486311f / 8.0), - FL2FXCONST_SGL(0.42389784469507f / 8.0)}, - {FL2FXCONST_SGL(-0.65501142790847f / 8.0), - FL2FXCONST_SGL(0.82546114655624f / 8.0)}, - {FL2FXCONST_SGL(-0.81254441908887f / 8.0), - FL2FXCONST_SGL(-0.51627234660629f / 8.0)}, - {FL2FXCONST_SGL(-0.99646369485481f / 8.0), - FL2FXCONST_SGL(0.84490533520752f / 8.0)}, - {FL2FXCONST_SGL(0.00287840603348f / 8.0), - FL2FXCONST_SGL(0.64768261158166f / 8.0)}, - {FL2FXCONST_SGL(0.70176989408455f / 8.0), - FL2FXCONST_SGL(-0.20453028573322f / 8.0)}, - {FL2FXCONST_SGL(0.96361882270190f / 8.0), - FL2FXCONST_SGL(0.40706967140989f / 8.0)}, - {FL2FXCONST_SGL(-0.68883758192426f / 8.0), - FL2FXCONST_SGL(0.91338958840772f / 8.0)}, - {FL2FXCONST_SGL(-0.34875585502238f / 8.0), - FL2FXCONST_SGL(0.71472290693300f / 8.0)}, - {FL2FXCONST_SGL(0.91980081243087f / 8.0), - FL2FXCONST_SGL(0.66507455644919f / 8.0)}, - {FL2FXCONST_SGL(-0.99009048343881f / 8.0), - FL2FXCONST_SGL(0.85868021604848f / 8.0)}, - {FL2FXCONST_SGL(0.68865791458395f / 8.0), - FL2FXCONST_SGL(0.55660316809678f / 8.0)}, - {FL2FXCONST_SGL(-0.99484402129368f / 8.0), - FL2FXCONST_SGL(-0.20052559254934f / 8.0)}, - {FL2FXCONST_SGL(0.94214511408023f / 8.0), - FL2FXCONST_SGL(-0.99696425367461f / 8.0)}, - {FL2FXCONST_SGL(-0.67414626793544f / 8.0), - FL2FXCONST_SGL(0.49548221180078f / 8.0)}, - {FL2FXCONST_SGL(-0.47339353684664f / 8.0), - FL2FXCONST_SGL(-0.85904328834047f / 8.0)}, - {FL2FXCONST_SGL(0.14323651387360f / 8.0), - FL2FXCONST_SGL(-0.94145598222488f / 8.0)}, - {FL2FXCONST_SGL(-0.29268293575672f / 8.0), - FL2FXCONST_SGL(0.05759224927952f / 8.0)}, - {FL2FXCONST_SGL(0.43793861458754f / 8.0), - FL2FXCONST_SGL(-0.78904969892724f / 8.0)}, - {FL2FXCONST_SGL(-0.36345126374441f / 8.0), - FL2FXCONST_SGL(0.64874435357162f / 8.0)}, - {FL2FXCONST_SGL(-0.08750604656825f / 8.0), - FL2FXCONST_SGL(0.97686944362527f / 8.0)}, - {FL2FXCONST_SGL(-0.96495267812511f / 8.0), - FL2FXCONST_SGL(-0.53960305946511f / 8.0)}, - {FL2FXCONST_SGL(0.55526940659947f / 8.0), - FL2FXCONST_SGL(0.78891523734774f / 8.0)}, - {FL2FXCONST_SGL(0.73538215752630f / 8.0), - FL2FXCONST_SGL(0.96452072373404f / 8.0)}, - {FL2FXCONST_SGL(-0.30889773919437f / 8.0), - FL2FXCONST_SGL(-0.80664389776860f / 8.0)}, - {FL2FXCONST_SGL(0.03574995626194f / 8.0), - FL2FXCONST_SGL(-0.97325616900959f / 8.0)}, - {FL2FXCONST_SGL(0.98720684660488f / 8.0), - FL2FXCONST_SGL(0.48409133691962f / 8.0)}, - {FL2FXCONST_SGL(-0.81689296271203f / 8.0), - FL2FXCONST_SGL(-0.90827703628298f / 8.0)}, - {FL2FXCONST_SGL(0.67866860118215f / 8.0), - FL2FXCONST_SGL(0.81284503870856f / 8.0)}, - {FL2FXCONST_SGL(-0.15808569732583f / 8.0), - FL2FXCONST_SGL(0.85279555024382f / 8.0)}, - {FL2FXCONST_SGL(0.80723395114371f / 8.0), - FL2FXCONST_SGL(-0.24717418514605f / 8.0)}, - {FL2FXCONST_SGL(0.47788757329038f / 8.0), - FL2FXCONST_SGL(-0.46333147839295f / 8.0)}, - {FL2FXCONST_SGL(0.96367554763201f / 8.0), - FL2FXCONST_SGL(0.38486749303242f / 8.0)}, - {FL2FXCONST_SGL(-0.99143875716818f / 8.0), - FL2FXCONST_SGL(-0.24945277239809f / 8.0)}, - {FL2FXCONST_SGL(0.83081876925833f / 8.0), - FL2FXCONST_SGL(-0.94780851414763f / 8.0)}, - {FL2FXCONST_SGL(-0.58753191905341f / 8.0), - FL2FXCONST_SGL(0.01290772389163f / 8.0)}, - {FL2FXCONST_SGL(0.95538108220960f / 8.0), - FL2FXCONST_SGL(-0.85557052096538f / 8.0)}, - {FL2FXCONST_SGL(-0.96490920476211f / 8.0), - FL2FXCONST_SGL(-0.64020970923102f / 8.0)}, - {FL2FXCONST_SGL(-0.97327101028521f / 8.0), - FL2FXCONST_SGL(0.12378128133110f / 8.0)}, - {FL2FXCONST_SGL(0.91400366022124f / 8.0), - FL2FXCONST_SGL(0.57972471346930f / 8.0)}, - {FL2FXCONST_SGL(-0.99925837363824f / 8.0), - FL2FXCONST_SGL(0.71084847864067f / 8.0)}, - {FL2FXCONST_SGL(-0.86875903507313f / 8.0), - FL2FXCONST_SGL(-0.20291699203564f / 8.0)}, - {FL2FXCONST_SGL(-0.26240034795124f / 8.0), - FL2FXCONST_SGL(-0.68264554369108f / 8.0)}, - {FL2FXCONST_SGL(-0.24664412953388f / 8.0), - FL2FXCONST_SGL(-0.87642273115183f / 8.0)}, - {FL2FXCONST_SGL(0.02416275806869f / 8.0), - FL2FXCONST_SGL(0.27192914288905f / 8.0)}, - {FL2FXCONST_SGL(0.82068619590515f / 8.0), - FL2FXCONST_SGL(-0.85087787994476f / 8.0)}, - {FL2FXCONST_SGL(0.88547373760759f / 8.0), - FL2FXCONST_SGL(-0.89636802901469f / 8.0)}, - {FL2FXCONST_SGL(-0.18173078152226f / 8.0), - FL2FXCONST_SGL(-0.26152145156800f / 8.0)}, - {FL2FXCONST_SGL(0.09355476558534f / 8.0), - FL2FXCONST_SGL(0.54845123045604f / 8.0)}, - {FL2FXCONST_SGL(-0.54668414224090f / 8.0), - FL2FXCONST_SGL(0.95980774020221f / 8.0)}, - {FL2FXCONST_SGL(0.37050990604091f / 8.0), - FL2FXCONST_SGL(-0.59910140383171f / 8.0)}, - {FL2FXCONST_SGL(-0.70373594262891f / 8.0), - FL2FXCONST_SGL(0.91227665827081f / 8.0)}, - {FL2FXCONST_SGL(-0.34600785879594f / 8.0), - FL2FXCONST_SGL(-0.99441426144200f / 8.0)}, - {FL2FXCONST_SGL(-0.68774481731008f / 8.0), - FL2FXCONST_SGL(-0.30238837956299f / 8.0)}, - {FL2FXCONST_SGL(-0.26843291251234f / 8.0), - FL2FXCONST_SGL(0.83115668004362f / 8.0)}, - {FL2FXCONST_SGL(0.49072334613242f / 8.0), - FL2FXCONST_SGL(-0.45359708737775f / 8.0)}, - {FL2FXCONST_SGL(0.38975993093975f / 8.0), - FL2FXCONST_SGL(0.95515358099121f / 8.0)}, - {FL2FXCONST_SGL(-0.97757125224150f / 8.0), - FL2FXCONST_SGL(0.05305894580606f / 8.0)}, - {FL2FXCONST_SGL(-0.17325552859616f / 8.0), - FL2FXCONST_SGL(-0.92770672250494f / 8.0)}, - {FL2FXCONST_SGL(0.99948035025744f / 8.0), - FL2FXCONST_SGL(0.58285545563426f / 8.0)}, - {FL2FXCONST_SGL(-0.64946246527458f / 8.0), - FL2FXCONST_SGL(0.68645507104960f / 8.0)}, - {FL2FXCONST_SGL(-0.12016920576437f / 8.0), - FL2FXCONST_SGL(-0.57147322153312f / 8.0)}, - {FL2FXCONST_SGL(-0.58947456517751f / 8.0), - FL2FXCONST_SGL(-0.34847132454388f / 8.0)}, - {FL2FXCONST_SGL(-0.41815140454465f / 8.0), - FL2FXCONST_SGL(0.16276422358861f / 8.0)}, - {FL2FXCONST_SGL(0.99885650204884f / 8.0), - FL2FXCONST_SGL(0.11136095490444f / 8.0)}, - {FL2FXCONST_SGL(-0.56649614128386f / 8.0), - FL2FXCONST_SGL(-0.90494866361587f / 8.0)}, - {FL2FXCONST_SGL(0.94138021032330f / 8.0), - FL2FXCONST_SGL(0.35281916733018f / 8.0)}, - {FL2FXCONST_SGL(-0.75725076534641f / 8.0), - FL2FXCONST_SGL(0.53650549640587f / 8.0)}, - {FL2FXCONST_SGL(0.20541973692630f / 8.0), - FL2FXCONST_SGL(-0.94435144369918f / 8.0)}, - {FL2FXCONST_SGL(0.99980371023351f / 8.0), - FL2FXCONST_SGL(0.79835913565599f / 8.0)}, - {FL2FXCONST_SGL(0.29078277605775f / 8.0), - FL2FXCONST_SGL(0.35393777921520f / 8.0)}, - {FL2FXCONST_SGL(-0.62858772103030f / 8.0), - FL2FXCONST_SGL(0.38765693387102f / 8.0)}, - {FL2FXCONST_SGL(0.43440904467688f / 8.0), - FL2FXCONST_SGL(-0.98546330463232f / 8.0)}, - {FL2FXCONST_SGL(-0.98298583762390f / 8.0), - FL2FXCONST_SGL(0.21021524625209f / 8.0)}, - {FL2FXCONST_SGL(0.19513029146934f / 8.0), - FL2FXCONST_SGL(-0.94239832251867f / 8.0)}, - {FL2FXCONST_SGL(-0.95476662400101f / 8.0), - FL2FXCONST_SGL(0.98364554179143f / 8.0)}, - {FL2FXCONST_SGL(0.93379635304810f / 8.0), - FL2FXCONST_SGL(-0.70881994583682f / 8.0)}, - {FL2FXCONST_SGL(-0.85235410573336f / 8.0), - FL2FXCONST_SGL(-0.08342347966410f / 8.0)}, - {FL2FXCONST_SGL(-0.86425093011245f / 8.0), - FL2FXCONST_SGL(-0.45795025029466f / 8.0)}, - {FL2FXCONST_SGL(0.38879779059045f / 8.0), - FL2FXCONST_SGL(0.97274429344593f / 8.0)}, - {FL2FXCONST_SGL(0.92045124735495f / 8.0), - FL2FXCONST_SGL(-0.62433652524220f / 8.0)}, - {FL2FXCONST_SGL(0.89162532251878f / 8.0), - FL2FXCONST_SGL(0.54950955570563f / 8.0)}, - {FL2FXCONST_SGL(-0.36834336949252f / 8.0), - FL2FXCONST_SGL(0.96458298020975f / 8.0)}, - {FL2FXCONST_SGL(0.93891760988045f / 8.0), - FL2FXCONST_SGL(-0.89968353740388f / 8.0)}, - {FL2FXCONST_SGL(0.99267657565094f / 8.0), - FL2FXCONST_SGL(-0.03757034316958f / 8.0)}, - {FL2FXCONST_SGL(-0.94063471614176f / 8.0), - FL2FXCONST_SGL(0.41332338538963f / 8.0)}, - {FL2FXCONST_SGL(0.99740224117019f / 8.0), - FL2FXCONST_SGL(-0.16830494996370f / 8.0)}, - {FL2FXCONST_SGL(-0.35899413170555f / 8.0), - FL2FXCONST_SGL(-0.46633226649613f / 8.0)}, - {FL2FXCONST_SGL(0.05237237274947f / 8.0), - FL2FXCONST_SGL(-0.25640361602661f / 8.0)}, - {FL2FXCONST_SGL(0.36703583957424f / 8.0), - FL2FXCONST_SGL(-0.38653265641875f / 8.0)}, - {FL2FXCONST_SGL(0.91653180367913f / 8.0), - FL2FXCONST_SGL(-0.30587628726597f / 8.0)}, - {FL2FXCONST_SGL(0.69000803499316f / 8.0), - FL2FXCONST_SGL(0.90952171386132f / 8.0)}, - {FL2FXCONST_SGL(-0.38658751133527f / 8.0), - FL2FXCONST_SGL(0.99501571208985f / 8.0)}, - {FL2FXCONST_SGL(-0.29250814029851f / 8.0), - FL2FXCONST_SGL(0.37444994344615f / 8.0)}, - {FL2FXCONST_SGL(-0.60182204677608f / 8.0), - FL2FXCONST_SGL(0.86779651036123f / 8.0)}, - {FL2FXCONST_SGL(-0.97418588163217f / 8.0), - FL2FXCONST_SGL(0.96468523666475f / 8.0)}, - {FL2FXCONST_SGL(0.88461574003963f / 8.0), - FL2FXCONST_SGL(0.57508405276414f / 8.0)}, - {FL2FXCONST_SGL(0.05198933055162f / 8.0), - FL2FXCONST_SGL(0.21269661669964f / 8.0)}, - {FL2FXCONST_SGL(-0.53499621979720f / 8.0), - FL2FXCONST_SGL(0.97241553731237f / 8.0)}, - {FL2FXCONST_SGL(-0.49429560226497f / 8.0), - FL2FXCONST_SGL(0.98183865291903f / 8.0)}, - {FL2FXCONST_SGL(-0.98935142339139f / 8.0), - FL2FXCONST_SGL(-0.40249159006933f / 8.0)}, - {FL2FXCONST_SGL(-0.98081380091130f / 8.0), - FL2FXCONST_SGL(-0.72856895534041f / 8.0)}, - {FL2FXCONST_SGL(-0.27338148835532f / 8.0), - FL2FXCONST_SGL(0.99950922447209f / 8.0)}, - {FL2FXCONST_SGL(0.06310802338302f / 8.0), - FL2FXCONST_SGL(-0.54539587529618f / 8.0)}, - {FL2FXCONST_SGL(-0.20461677199539f / 8.0), - FL2FXCONST_SGL(-0.14209977628489f / 8.0)}, - {FL2FXCONST_SGL(0.66223843141647f / 8.0), - FL2FXCONST_SGL(0.72528579940326f / 8.0)}, - {FL2FXCONST_SGL(-0.84764345483665f / 8.0), - FL2FXCONST_SGL(0.02372316801261f / 8.0)}, - {FL2FXCONST_SGL(-0.89039863483811f / 8.0), - FL2FXCONST_SGL(0.88866581484602f / 8.0)}, - {FL2FXCONST_SGL(0.95903308477986f / 8.0), - FL2FXCONST_SGL(0.76744927173873f / 8.0)}, - {FL2FXCONST_SGL(0.73504123909879f / 8.0), - FL2FXCONST_SGL(-0.03747203173192f / 8.0)}, - {FL2FXCONST_SGL(-0.31744434966056f / 8.0), - FL2FXCONST_SGL(-0.36834111883652f / 8.0)}, - {FL2FXCONST_SGL(-0.34110827591623f / 8.0), - FL2FXCONST_SGL(0.40211222807691f / 8.0)}, - {FL2FXCONST_SGL(0.47803883714199f / 8.0), - FL2FXCONST_SGL(-0.39423219786288f / 8.0)}, - {FL2FXCONST_SGL(0.98299195879514f / 8.0), - FL2FXCONST_SGL(0.01989791390047f / 8.0)}, - {FL2FXCONST_SGL(-0.30963073129751f / 8.0), - FL2FXCONST_SGL(-0.18076720599336f / 8.0)}, - {FL2FXCONST_SGL(0.99992588229018f / 8.0), - FL2FXCONST_SGL(-0.26281872094289f / 8.0)}, - {FL2FXCONST_SGL(-0.93149731080767f / 8.0), - FL2FXCONST_SGL(-0.98313162570490f / 8.0)}, - {FL2FXCONST_SGL(0.99923472302773f / 8.0), - FL2FXCONST_SGL(-0.80142993767554f / 8.0)}, - {FL2FXCONST_SGL(-0.26024169633417f / 8.0), - FL2FXCONST_SGL(-0.75999759855752f / 8.0)}, - {FL2FXCONST_SGL(-0.35712514743563f / 8.0), - FL2FXCONST_SGL(0.19298963768574f / 8.0)}, - {FL2FXCONST_SGL(-0.99899084509530f / 8.0), - FL2FXCONST_SGL(0.74645156992493f / 8.0)}, - {FL2FXCONST_SGL(0.86557171579452f / 8.0), - FL2FXCONST_SGL(0.55593866696299f / 8.0)}, - {FL2FXCONST_SGL(0.33408042438752f / 8.0), - FL2FXCONST_SGL(0.86185953874709f / 8.0)}, - {FL2FXCONST_SGL(0.99010736374716f / 8.0), - FL2FXCONST_SGL(0.04602397576623f / 8.0)}, - {FL2FXCONST_SGL(-0.66694269691195f / 8.0), - FL2FXCONST_SGL(-0.91643611810148f / 8.0)}, - {FL2FXCONST_SGL(0.64016792079480f / 8.0), - FL2FXCONST_SGL(0.15649530836856f / 8.0)}, - {FL2FXCONST_SGL(0.99570534804836f / 8.0), - FL2FXCONST_SGL(0.45844586038111f / 8.0)}, - {FL2FXCONST_SGL(-0.63431466947340f / 8.0), - FL2FXCONST_SGL(0.21079116459234f / 8.0)}, - {FL2FXCONST_SGL(-0.07706847005931f / 8.0), - FL2FXCONST_SGL(-0.89581437101329f / 8.0)}, - {FL2FXCONST_SGL(0.98590090577724f / 8.0), - FL2FXCONST_SGL(0.88241721133981f / 8.0)}, - {FL2FXCONST_SGL(0.80099335254678f / 8.0), - FL2FXCONST_SGL(-0.36851896710853f / 8.0)}, - {FL2FXCONST_SGL(0.78368131392666f / 8.0), - FL2FXCONST_SGL(0.45506999802597f / 8.0)}, - {FL2FXCONST_SGL(0.08707806671691f / 8.0), - FL2FXCONST_SGL(0.80938994918745f / 8.0)}, - {FL2FXCONST_SGL(-0.86811883080712f / 8.0), - FL2FXCONST_SGL(0.39347308654705f / 8.0)}, - {FL2FXCONST_SGL(-0.39466529740375f / 8.0), - FL2FXCONST_SGL(-0.66809432114456f / 8.0)}, - {FL2FXCONST_SGL(0.97875325649683f / 8.0), - FL2FXCONST_SGL(-0.72467840967746f / 8.0)}, - {FL2FXCONST_SGL(-0.95038560288864f / 8.0), - FL2FXCONST_SGL(0.89563219587625f / 8.0)}, - {FL2FXCONST_SGL(0.17005239424212f / 8.0), - FL2FXCONST_SGL(0.54683053962658f / 8.0)}, - {FL2FXCONST_SGL(-0.76910792026848f / 8.0), - FL2FXCONST_SGL(-0.96226617549298f / 8.0)}, - {FL2FXCONST_SGL(0.99743281016846f / 8.0), - FL2FXCONST_SGL(0.42697157037567f / 8.0)}, - {FL2FXCONST_SGL(0.95437383549973f / 8.0), - FL2FXCONST_SGL(0.97002324109952f / 8.0)}, - {FL2FXCONST_SGL(0.99578905365569f / 8.0), - FL2FXCONST_SGL(-0.54106826257356f / 8.0)}, - {FL2FXCONST_SGL(0.28058259829990f / 8.0), - FL2FXCONST_SGL(-0.85361420634036f / 8.0)}, - {FL2FXCONST_SGL(0.85256524470573f / 8.0), - FL2FXCONST_SGL(-0.64567607735589f / 8.0)}, - {FL2FXCONST_SGL(-0.50608540105128f / 8.0), - FL2FXCONST_SGL(-0.65846015480300f / 8.0)}, - {FL2FXCONST_SGL(-0.97210735183243f / 8.0), - FL2FXCONST_SGL(-0.23095213067791f / 8.0)}, - {FL2FXCONST_SGL(0.95424048234441f / 8.0), - FL2FXCONST_SGL(-0.99240147091219f / 8.0)}, - {FL2FXCONST_SGL(-0.96926570524023f / 8.0), - FL2FXCONST_SGL(0.73775654896574f / 8.0)}, - {FL2FXCONST_SGL(0.30872163214726f / 8.0), - FL2FXCONST_SGL(0.41514960556126f / 8.0)}, - {FL2FXCONST_SGL(-0.24523839572639f / 8.0), - FL2FXCONST_SGL(0.63206633394807f / 8.0)}, - {FL2FXCONST_SGL(-0.33813265086024f / 8.0), - FL2FXCONST_SGL(-0.38661779441897f / 8.0)}, - {FL2FXCONST_SGL(-0.05826828420146f / 8.0), - FL2FXCONST_SGL(-0.06940774188029f / 8.0)}, - {FL2FXCONST_SGL(-0.22898461455054f / 8.0), - FL2FXCONST_SGL(0.97054853316316f / 8.0)}, - {FL2FXCONST_SGL(-0.18509915019881f / 8.0), - FL2FXCONST_SGL(0.47565762892084f / 8.0)}, - {FL2FXCONST_SGL(-0.10488238045009f / 8.0), - FL2FXCONST_SGL(-0.87769947402394f / 8.0)}, - {FL2FXCONST_SGL(-0.71886586182037f / 8.0), - FL2FXCONST_SGL(0.78030982480538f / 8.0)}, - {FL2FXCONST_SGL(0.99793873738654f / 8.0), - FL2FXCONST_SGL(0.90041310491497f / 8.0)}, - {FL2FXCONST_SGL(0.57563307626120f / 8.0), - FL2FXCONST_SGL(-0.91034337352097f / 8.0)}, - {FL2FXCONST_SGL(0.28909646383717f / 8.0), - FL2FXCONST_SGL(0.96307783970534f / 8.0)}, - {FL2FXCONST_SGL(0.42188998312520f / 8.0), - FL2FXCONST_SGL(0.48148651230437f / 8.0)}, - {FL2FXCONST_SGL(0.93335049681047f / 8.0), - FL2FXCONST_SGL(-0.43537023883588f / 8.0)}, - {FL2FXCONST_SGL(-0.97087374418267f / 8.0), - FL2FXCONST_SGL(0.86636445711364f / 8.0)}, - {FL2FXCONST_SGL(0.36722871286923f / 8.0), - FL2FXCONST_SGL(0.65291654172961f / 8.0)}, - {FL2FXCONST_SGL(-0.81093025665696f / 8.0), - FL2FXCONST_SGL(0.08778370229363f / 8.0)}, - {FL2FXCONST_SGL(-0.26240603062237f / 8.0), - FL2FXCONST_SGL(-0.92774095379098f / 8.0)}, - {FL2FXCONST_SGL(0.83996497984604f / 8.0), - FL2FXCONST_SGL(0.55839849139647f / 8.0)}, - {FL2FXCONST_SGL(-0.99909615720225f / 8.0), - FL2FXCONST_SGL(-0.96024605713970f / 8.0)}, - {FL2FXCONST_SGL(0.74649464155061f / 8.0), - FL2FXCONST_SGL(0.12144893606462f / 8.0)}, - {FL2FXCONST_SGL(-0.74774595569805f / 8.0), - FL2FXCONST_SGL(-0.26898062008959f / 8.0)}, - {FL2FXCONST_SGL(0.95781667469567f / 8.0), - FL2FXCONST_SGL(-0.79047927052628f / 8.0)}, - {FL2FXCONST_SGL(0.95472308713099f / 8.0), - FL2FXCONST_SGL(-0.08588776019550f / 8.0)}, - {FL2FXCONST_SGL(0.48708332746299f / 8.0), - FL2FXCONST_SGL(0.99999041579432f / 8.0)}, - {FL2FXCONST_SGL(0.46332038247497f / 8.0), - FL2FXCONST_SGL(0.10964126185063f / 8.0)}, - {FL2FXCONST_SGL(-0.76497004940162f / 8.0), - FL2FXCONST_SGL(0.89210929242238f / 8.0)}, - {FL2FXCONST_SGL(0.57397389364339f / 8.0), - FL2FXCONST_SGL(0.35289703373760f / 8.0)}, - {FL2FXCONST_SGL(0.75374316974495f / 8.0), - FL2FXCONST_SGL(0.96705214651335f / 8.0)}, - {FL2FXCONST_SGL(-0.59174397685714f / 8.0), - FL2FXCONST_SGL(-0.89405370422752f / 8.0)}, - {FL2FXCONST_SGL(0.75087906691890f / 8.0), - FL2FXCONST_SGL(-0.29612672982396f / 8.0)}, - {FL2FXCONST_SGL(-0.98607857336230f / 8.0), - FL2FXCONST_SGL(0.25034911730023f / 8.0)}, - {FL2FXCONST_SGL(-0.40761056640505f / 8.0), - FL2FXCONST_SGL(-0.90045573444695f / 8.0)}, - {FL2FXCONST_SGL(0.66929266740477f / 8.0), - FL2FXCONST_SGL(0.98629493401748f / 8.0)}, - {FL2FXCONST_SGL(-0.97463695257310f / 8.0), - FL2FXCONST_SGL(-0.00190223301301f / 8.0)}, - {FL2FXCONST_SGL(0.90145509409859f / 8.0), - FL2FXCONST_SGL(0.99781390365446f / 8.0)}, - {FL2FXCONST_SGL(-0.87259289048043f / 8.0), - FL2FXCONST_SGL(0.99233587353666f / 8.0)}, - {FL2FXCONST_SGL(-0.91529461447692f / 8.0), - FL2FXCONST_SGL(-0.15698707534206f / 8.0)}, - {FL2FXCONST_SGL(-0.03305738840705f / 8.0), - FL2FXCONST_SGL(-0.37205262859764f / 8.0)}, - {FL2FXCONST_SGL(0.07223051368337f / 8.0), - FL2FXCONST_SGL(-0.88805001733626f / 8.0)}, - {FL2FXCONST_SGL(0.99498012188353f / 8.0), - FL2FXCONST_SGL(0.97094358113387f / 8.0)}, - {FL2FXCONST_SGL(-0.74904939500519f / 8.0), - FL2FXCONST_SGL(0.99985483641521f / 8.0)}, - {FL2FXCONST_SGL(0.04585228574211f / 8.0), - FL2FXCONST_SGL(0.99812337444082f / 8.0)}, - {FL2FXCONST_SGL(-0.89054954257993f / 8.0), - FL2FXCONST_SGL(-0.31791913188064f / 8.0)}, - {FL2FXCONST_SGL(-0.83782144651251f / 8.0), - FL2FXCONST_SGL(0.97637632547466f / 8.0)}, - {FL2FXCONST_SGL(0.33454804933804f / 8.0), - FL2FXCONST_SGL(-0.86231516800408f / 8.0)}, - {FL2FXCONST_SGL(-0.99707579362824f / 8.0), - FL2FXCONST_SGL(0.93237990079441f / 8.0)}, - {FL2FXCONST_SGL(-0.22827527843994f / 8.0), - FL2FXCONST_SGL(0.18874759397997f / 8.0)}, - {FL2FXCONST_SGL(0.67248046289143f / 8.0), - FL2FXCONST_SGL(-0.03646211390569f / 8.0)}, - {FL2FXCONST_SGL(-0.05146538187944f / 8.0), - FL2FXCONST_SGL(-0.92599700120679f / 8.0)}, - {FL2FXCONST_SGL(0.99947295749905f / 8.0), - FL2FXCONST_SGL(0.93625229707912f / 8.0)}, - {FL2FXCONST_SGL(0.66951124390363f / 8.0), - FL2FXCONST_SGL(0.98905825623893f / 8.0)}, - {FL2FXCONST_SGL(-0.99602956559179f / 8.0), - FL2FXCONST_SGL(-0.44654715757688f / 8.0)}, - {FL2FXCONST_SGL(0.82104905483590f / 8.0), - FL2FXCONST_SGL(0.99540741724928f / 8.0)}, - {FL2FXCONST_SGL(0.99186510988782f / 8.0), - FL2FXCONST_SGL(0.72023001312947f / 8.0)}, - {FL2FXCONST_SGL(-0.65284592392918f / 8.0), - FL2FXCONST_SGL(0.52186723253637f / 8.0)}, - {FL2FXCONST_SGL(0.93885443798188f / 8.0), - FL2FXCONST_SGL(-0.74895312615259f / 8.0)}, - {FL2FXCONST_SGL(0.96735248738388f / 8.0), - FL2FXCONST_SGL(0.90891816978629f / 8.0)}, - {FL2FXCONST_SGL(-0.22225968841114f / 8.0), - FL2FXCONST_SGL(0.57124029781228f / 8.0)}, - {FL2FXCONST_SGL(-0.44132783753414f / 8.0), - FL2FXCONST_SGL(-0.92688840659280f / 8.0)}, - {FL2FXCONST_SGL(-0.85694974219574f / 8.0), - FL2FXCONST_SGL(0.88844532719844f / 8.0)}, - {FL2FXCONST_SGL(0.91783042091762f / 8.0), - FL2FXCONST_SGL(-0.46356892383970f / 8.0)}, - {FL2FXCONST_SGL(0.72556974415690f / 8.0), - FL2FXCONST_SGL(-0.99899555770747f / 8.0)}, - {FL2FXCONST_SGL(-0.99711581834508f / 8.0), - FL2FXCONST_SGL(0.58211560180426f / 8.0)}, - {FL2FXCONST_SGL(0.77638976371966f / 8.0), - FL2FXCONST_SGL(0.94321834873819f / 8.0)}, - {FL2FXCONST_SGL(0.07717324253925f / 8.0), - FL2FXCONST_SGL(0.58638399856595f / 8.0)}, - {FL2FXCONST_SGL(-0.56049829194163f / 8.0), - FL2FXCONST_SGL(0.82522301569036f / 8.0)}, - {FL2FXCONST_SGL(0.98398893639988f / 8.0), - FL2FXCONST_SGL(0.39467440420569f / 8.0)}, - {FL2FXCONST_SGL(0.47546946844938f / 8.0), - FL2FXCONST_SGL(0.68613044836811f / 8.0)}, - {FL2FXCONST_SGL(0.65675089314631f / 8.0), - FL2FXCONST_SGL(0.18331637134880f / 8.0)}, - {FL2FXCONST_SGL(0.03273375457980f / 8.0), - FL2FXCONST_SGL(-0.74933109564108f / 8.0)}, - {FL2FXCONST_SGL(-0.38684144784738f / 8.0), - FL2FXCONST_SGL(0.51337349030406f / 8.0)}, - {FL2FXCONST_SGL(-0.97346267944545f / 8.0), - FL2FXCONST_SGL(-0.96549364384098f / 8.0)}, - {FL2FXCONST_SGL(-0.53282156061942f / 8.0), - FL2FXCONST_SGL(-0.91423265091354f / 8.0)}, - {FL2FXCONST_SGL(0.99817310731176f / 8.0), - FL2FXCONST_SGL(0.61133572482148f / 8.0)}, - {FL2FXCONST_SGL(-0.50254500772635f / 8.0), - FL2FXCONST_SGL(-0.88829338134294f / 8.0)}, - {FL2FXCONST_SGL(0.01995873238855f / 8.0), - FL2FXCONST_SGL(0.85223515096765f / 8.0)}, - {FL2FXCONST_SGL(0.99930381973804f / 8.0), - FL2FXCONST_SGL(0.94578896296649f / 8.0)}, - {FL2FXCONST_SGL(0.82907767600783f / 8.0), - FL2FXCONST_SGL(-0.06323442598128f / 8.0)}, - {FL2FXCONST_SGL(-0.58660709669728f / 8.0), - FL2FXCONST_SGL(0.96840773806582f / 8.0)}, - {FL2FXCONST_SGL(-0.17573736667267f / 8.0), - FL2FXCONST_SGL(-0.48166920859485f / 8.0)}, - {FL2FXCONST_SGL(0.83434292401346f / 8.0), - FL2FXCONST_SGL(-0.13023450646997f / 8.0)}, - {FL2FXCONST_SGL(0.05946491307025f / 8.0), - FL2FXCONST_SGL(0.20511047074866f / 8.0)}, - {FL2FXCONST_SGL(0.81505484574602f / 8.0), - FL2FXCONST_SGL(-0.94685947861369f / 8.0)}, - {FL2FXCONST_SGL(-0.44976380954860f / 8.0), - FL2FXCONST_SGL(0.40894572671545f / 8.0)}, - {FL2FXCONST_SGL(-0.89746474625671f / 8.0), - FL2FXCONST_SGL(0.99846578838537f / 8.0)}, - {FL2FXCONST_SGL(0.39677256130792f / 8.0), - FL2FXCONST_SGL(-0.74854668609359f / 8.0)}, - {FL2FXCONST_SGL(-0.07588948563079f / 8.0), - FL2FXCONST_SGL(0.74096214084170f / 8.0)}, - {FL2FXCONST_SGL(0.76343198951445f / 8.0), - FL2FXCONST_SGL(0.41746629422634f / 8.0)}, - {FL2FXCONST_SGL(-0.74490104699626f / 8.0), - FL2FXCONST_SGL(0.94725911744610f / 8.0)}, - {FL2FXCONST_SGL(0.64880119792759f / 8.0), - FL2FXCONST_SGL(0.41336660830571f / 8.0)}, - {FL2FXCONST_SGL(0.62319537462542f / 8.0), - FL2FXCONST_SGL(-0.93098313552599f / 8.0)}, - {FL2FXCONST_SGL(0.42215817594807f / 8.0), - FL2FXCONST_SGL(-0.07712787385208f / 8.0)}, - {FL2FXCONST_SGL(0.02704554141885f / 8.0), - FL2FXCONST_SGL(-0.05417518053666f / 8.0)}, - {FL2FXCONST_SGL(0.80001773566818f / 8.0), - FL2FXCONST_SGL(0.91542195141039f / 8.0)}, - {FL2FXCONST_SGL(-0.79351832348816f / 8.0), - FL2FXCONST_SGL(-0.36208897989136f / 8.0)}, - {FL2FXCONST_SGL(0.63872359151636f / 8.0), - FL2FXCONST_SGL(0.08128252493444f / 8.0)}, - {FL2FXCONST_SGL(0.52890520960295f / 8.0), - FL2FXCONST_SGL(0.60048872455592f / 8.0)}, - {FL2FXCONST_SGL(0.74238552914587f / 8.0), - FL2FXCONST_SGL(0.04491915291044f / 8.0)}, - {FL2FXCONST_SGL(0.99096131449250f / 8.0), - FL2FXCONST_SGL(-0.19451182854402f / 8.0)}, - {FL2FXCONST_SGL(-0.80412329643109f / 8.0), - FL2FXCONST_SGL(-0.88513818199457f / 8.0)}, - {FL2FXCONST_SGL(-0.64612616129736f / 8.0), - FL2FXCONST_SGL(0.72198674804544f / 8.0)}, - {FL2FXCONST_SGL(0.11657770663191f / 8.0), - FL2FXCONST_SGL(-0.83662833815041f / 8.0)}, - {FL2FXCONST_SGL(-0.95053182488101f / 8.0), - FL2FXCONST_SGL(-0.96939905138082f / 8.0)}, - {FL2FXCONST_SGL(-0.62228872928622f / 8.0), - FL2FXCONST_SGL(0.82767262846661f / 8.0)}, - {FL2FXCONST_SGL(0.03004475787316f / 8.0), - FL2FXCONST_SGL(-0.99738896333384f / 8.0)}, - {FL2FXCONST_SGL(-0.97987214341034f / 8.0), - FL2FXCONST_SGL(0.36526129686425f / 8.0)}, - {FL2FXCONST_SGL(-0.99986980746200f / 8.0), - FL2FXCONST_SGL(-0.36021610299715f / 8.0)}, - {FL2FXCONST_SGL(0.89110648599879f / 8.0), - FL2FXCONST_SGL(-0.97894250343044f / 8.0)}, - {FL2FXCONST_SGL(0.10407960510582f / 8.0), - FL2FXCONST_SGL(0.77357793811619f / 8.0)}, - {FL2FXCONST_SGL(0.95964737821728f / 8.0), - FL2FXCONST_SGL(-0.35435818285502f / 8.0)}, - {FL2FXCONST_SGL(0.50843233159162f / 8.0), - FL2FXCONST_SGL(0.96107691266205f / 8.0)}, - {FL2FXCONST_SGL(0.17006334670615f / 8.0), - FL2FXCONST_SGL(-0.76854025314829f / 8.0)}, - {FL2FXCONST_SGL(0.25872675063360f / 8.0), - FL2FXCONST_SGL(0.99893303933816f / 8.0)}, - {FL2FXCONST_SGL(-0.01115998681937f / 8.0), - FL2FXCONST_SGL(0.98496019742444f / 8.0)}, - {FL2FXCONST_SGL(-0.79598702973261f / 8.0), - FL2FXCONST_SGL(0.97138411318894f / 8.0)}, - {FL2FXCONST_SGL(-0.99264708948101f / 8.0), - FL2FXCONST_SGL(-0.99542822402536f / 8.0)}, - {FL2FXCONST_SGL(-0.99829663752818f / 8.0), - FL2FXCONST_SGL(0.01877138824311f / 8.0)}, - {FL2FXCONST_SGL(-0.70801016548184f / 8.0), - FL2FXCONST_SGL(0.33680685948117f / 8.0)}, - {FL2FXCONST_SGL(-0.70467057786826f / 8.0), - FL2FXCONST_SGL(0.93272777501857f / 8.0)}, - {FL2FXCONST_SGL(0.99846021905254f / 8.0), - FL2FXCONST_SGL(-0.98725746254433f / 8.0)}, - {FL2FXCONST_SGL(-0.63364968534650f / 8.0), - FL2FXCONST_SGL(-0.16473594423746f / 8.0)}, - {FL2FXCONST_SGL(-0.16258217500792f / 8.0), - FL2FXCONST_SGL(-0.95939125400802f / 8.0)}, - {FL2FXCONST_SGL(-0.43645594360633f / 8.0), - FL2FXCONST_SGL(-0.94805030113284f / 8.0)}, - {FL2FXCONST_SGL(-0.99848471702976f / 8.0), - FL2FXCONST_SGL(0.96245166923809f / 8.0)}, - {FL2FXCONST_SGL(-0.16796458968998f / 8.0), - FL2FXCONST_SGL(-0.98987511890470f / 8.0)}, - {FL2FXCONST_SGL(-0.87979225745213f / 8.0), - FL2FXCONST_SGL(-0.71725725041680f / 8.0)}, - {FL2FXCONST_SGL(0.44183099021786f / 8.0), - FL2FXCONST_SGL(-0.93568974498761f / 8.0)}, - {FL2FXCONST_SGL(0.93310180125532f / 8.0), - FL2FXCONST_SGL(-0.99913308068246f / 8.0)}, - {FL2FXCONST_SGL(-0.93941931782002f / 8.0), - FL2FXCONST_SGL(-0.56409379640356f / 8.0)}, - {FL2FXCONST_SGL(-0.88590003188677f / 8.0), - FL2FXCONST_SGL(0.47624600491382f / 8.0)}, - {FL2FXCONST_SGL(0.99971463703691f / 8.0), - FL2FXCONST_SGL(-0.83889954253462f / 8.0)}, - {FL2FXCONST_SGL(-0.75376385639978f / 8.0), - FL2FXCONST_SGL(0.00814643438625f / 8.0)}, - {FL2FXCONST_SGL(0.93887685615875f / 8.0), - FL2FXCONST_SGL(-0.11284528204636f / 8.0)}, - {FL2FXCONST_SGL(0.85126435782309f / 8.0), - FL2FXCONST_SGL(0.52349251543547f / 8.0)}, - {FL2FXCONST_SGL(0.39701421446381f / 8.0), - FL2FXCONST_SGL(0.81779634174316f / 8.0)}, - {FL2FXCONST_SGL(-0.37024464187437f / 8.0), - FL2FXCONST_SGL(-0.87071656222959f / 8.0)}, - {FL2FXCONST_SGL(-0.36024828242896f / 8.0), - FL2FXCONST_SGL(0.34655735648287f / 8.0)}, - {FL2FXCONST_SGL(-0.93388812549209f / 8.0), - FL2FXCONST_SGL(-0.84476541096429f / 8.0)}, - {FL2FXCONST_SGL(-0.65298804552119f / 8.0), - FL2FXCONST_SGL(-0.18439575450921f / 8.0)}, - {FL2FXCONST_SGL(0.11960319006843f / 8.0), - FL2FXCONST_SGL(0.99899346780168f / 8.0)}, - {FL2FXCONST_SGL(0.94292565553160f / 8.0), - FL2FXCONST_SGL(0.83163906518293f / 8.0)}, - {FL2FXCONST_SGL(0.75081145286948f / 8.0), - FL2FXCONST_SGL(-0.35533223142265f / 8.0)}, - {FL2FXCONST_SGL(0.56721979748394f / 8.0), - FL2FXCONST_SGL(-0.24076836414499f / 8.0)}, - {FL2FXCONST_SGL(0.46857766746029f / 8.0), - FL2FXCONST_SGL(-0.30140233457198f / 8.0)}, - {FL2FXCONST_SGL(0.97312313923635f / 8.0), - FL2FXCONST_SGL(-0.99548191630031f / 8.0)}, - {FL2FXCONST_SGL(-0.38299976567017f / 8.0), - FL2FXCONST_SGL(0.98516909715427f / 8.0)}, - {FL2FXCONST_SGL(0.41025800019463f / 8.0), - FL2FXCONST_SGL(0.02116736935734f / 8.0)}, - {FL2FXCONST_SGL(0.09638062008048f / 8.0), - FL2FXCONST_SGL(0.04411984381457f / 8.0)}, - {FL2FXCONST_SGL(-0.85283249275397f / 8.0), - FL2FXCONST_SGL(0.91475563922421f / 8.0)}, - {FL2FXCONST_SGL(0.88866808958124f / 8.0), - FL2FXCONST_SGL(-0.99735267083226f / 8.0)}, - {FL2FXCONST_SGL(-0.48202429536989f / 8.0), - FL2FXCONST_SGL(-0.96805608884164f / 8.0)}, - {FL2FXCONST_SGL(0.27572582416567f / 8.0), - FL2FXCONST_SGL(0.58634753335832f / 8.0)}, - {FL2FXCONST_SGL(-0.65889129659168f / 8.0), - FL2FXCONST_SGL(0.58835634138583f / 8.0)}, - {FL2FXCONST_SGL(0.98838086953732f / 8.0), - FL2FXCONST_SGL(0.99994349600236f / 8.0)}, - {FL2FXCONST_SGL(-0.20651349620689f / 8.0), - FL2FXCONST_SGL(0.54593044066355f / 8.0)}, - {FL2FXCONST_SGL(-0.62126416356920f / 8.0), - FL2FXCONST_SGL(-0.59893681700392f / 8.0)}, - {FL2FXCONST_SGL(0.20320105410437f / 8.0), - FL2FXCONST_SGL(-0.86879180355289f / 8.0)}, - {FL2FXCONST_SGL(-0.97790548600584f / 8.0), - FL2FXCONST_SGL(0.96290806999242f / 8.0)}, - {FL2FXCONST_SGL(0.11112534735126f / 8.0), - FL2FXCONST_SGL(0.21484763313301f / 8.0)}, - {FL2FXCONST_SGL(-0.41368337314182f / 8.0), - FL2FXCONST_SGL(0.28216837680365f / 8.0)}, - {FL2FXCONST_SGL(0.24133038992960f / 8.0), - FL2FXCONST_SGL(0.51294362630238f / 8.0)}, - {FL2FXCONST_SGL(-0.66393410674885f / 8.0), - FL2FXCONST_SGL(-0.08249679629081f / 8.0)}, - {FL2FXCONST_SGL(-0.53697829178752f / 8.0), - FL2FXCONST_SGL(-0.97649903936228f / 8.0)}, - {FL2FXCONST_SGL(-0.97224737889348f / 8.0), - FL2FXCONST_SGL(0.22081333579837f / 8.0)}, - {FL2FXCONST_SGL(0.87392477144549f / 8.0), - FL2FXCONST_SGL(-0.12796173740361f / 8.0)}, - {FL2FXCONST_SGL(0.19050361015753f / 8.0), - FL2FXCONST_SGL(0.01602615387195f / 8.0)}, - {FL2FXCONST_SGL(-0.46353441212724f / 8.0), - FL2FXCONST_SGL(-0.95249041539006f / 8.0)}, - {FL2FXCONST_SGL(-0.07064096339021f / 8.0), - FL2FXCONST_SGL(-0.94479803205886f / 8.0)}, - {FL2FXCONST_SGL(-0.92444085484466f / 8.0), - FL2FXCONST_SGL(-0.10457590187436f / 8.0)}, - {FL2FXCONST_SGL(-0.83822593578728f / 8.0), - FL2FXCONST_SGL(-0.01695043208885f / 8.0)}, - {FL2FXCONST_SGL(0.75214681811150f / 8.0), - FL2FXCONST_SGL(-0.99955681042665f / 8.0)}, - {FL2FXCONST_SGL(-0.42102998829339f / 8.0), - FL2FXCONST_SGL(0.99720941999394f / 8.0)}, - {FL2FXCONST_SGL(-0.72094786237696f / 8.0), - FL2FXCONST_SGL(-0.35008961934255f / 8.0)}, - {FL2FXCONST_SGL(0.78843311019251f / 8.0), - FL2FXCONST_SGL(0.52851398958271f / 8.0)}, - {FL2FXCONST_SGL(0.97394027897442f / 8.0), - FL2FXCONST_SGL(-0.26695944086561f / 8.0)}, - {FL2FXCONST_SGL(0.99206463477946f / 8.0), - FL2FXCONST_SGL(-0.57010120849429f / 8.0)}, - {FL2FXCONST_SGL(0.76789609461795f / 8.0), - FL2FXCONST_SGL(-0.76519356730966f / 8.0)}, - {FL2FXCONST_SGL(-0.82002421836409f / 8.0), - FL2FXCONST_SGL(-0.73530179553767f / 8.0)}, - {FL2FXCONST_SGL(0.81924990025724f / 8.0), - FL2FXCONST_SGL(0.99698425250579f / 8.0)}, - {FL2FXCONST_SGL(-0.26719850873357f / 8.0), - FL2FXCONST_SGL(0.68903369776193f / 8.0)}, - {FL2FXCONST_SGL(-0.43311260380975f / 8.0), - FL2FXCONST_SGL(0.85321815947490f / 8.0)}, - {FL2FXCONST_SGL(0.99194979673836f / 8.0), - FL2FXCONST_SGL(0.91876249766422f / 8.0)}, - {FL2FXCONST_SGL(-0.80692001248487f / 8.0), - FL2FXCONST_SGL(-0.32627540663214f / 8.0)}, - {FL2FXCONST_SGL(0.43080003649976f / 8.0), - FL2FXCONST_SGL(-0.21919095636638f / 8.0)}, - {FL2FXCONST_SGL(0.67709491937357f / 8.0), - FL2FXCONST_SGL(-0.95478075822906f / 8.0)}, - {FL2FXCONST_SGL(0.56151770568316f / 8.0), - FL2FXCONST_SGL(-0.70693811747778f / 8.0)}, - {FL2FXCONST_SGL(0.10831862810749f / 8.0), - FL2FXCONST_SGL(-0.08628837174592f / 8.0)}, - {FL2FXCONST_SGL(0.91229417540436f / 8.0), - FL2FXCONST_SGL(-0.65987351408410f / 8.0)}, - {FL2FXCONST_SGL(-0.48972893932274f / 8.0), - FL2FXCONST_SGL(0.56289246362686f / 8.0)}, - {FL2FXCONST_SGL(-0.89033658689697f / 8.0), - FL2FXCONST_SGL(-0.71656563987082f / 8.0)}, - {FL2FXCONST_SGL(0.65269447475094f / 8.0), - FL2FXCONST_SGL(0.65916004833932f / 8.0)}, - {FL2FXCONST_SGL(0.67439478141121f / 8.0), - FL2FXCONST_SGL(-0.81684380846796f / 8.0)}, - {FL2FXCONST_SGL(-0.47770832416973f / 8.0), - FL2FXCONST_SGL(-0.16789556203025f / 8.0)}, - {FL2FXCONST_SGL(-0.99715979260878f / 8.0), - FL2FXCONST_SGL(-0.93565784007648f / 8.0)}, - {FL2FXCONST_SGL(-0.90889593602546f / 8.0), - FL2FXCONST_SGL(0.62034397054380f / 8.0)}, - {FL2FXCONST_SGL(-0.06618622548177f / 8.0), - FL2FXCONST_SGL(-0.23812217221359f / 8.0)}, - {FL2FXCONST_SGL(0.99430266919728f / 8.0), - FL2FXCONST_SGL(0.18812555317553f / 8.0)}, - {FL2FXCONST_SGL(0.97686402381843f / 8.0), - FL2FXCONST_SGL(-0.28664534366620f / 8.0)}, - {FL2FXCONST_SGL(0.94813650221268f / 8.0), - FL2FXCONST_SGL(-0.97506640027128f / 8.0)}, - {FL2FXCONST_SGL(-0.95434497492853f / 8.0), - FL2FXCONST_SGL(-0.79607978501983f / 8.0)}, - {FL2FXCONST_SGL(-0.49104783137150f / 8.0), - FL2FXCONST_SGL(0.32895214359663f / 8.0)}, - {FL2FXCONST_SGL(0.99881175120751f / 8.0), - FL2FXCONST_SGL(0.88993983831354f / 8.0)}, - {FL2FXCONST_SGL(0.50449166760303f / 8.0), - FL2FXCONST_SGL(-0.85995072408434f / 8.0)}, - {FL2FXCONST_SGL(0.47162891065108f / 8.0), - FL2FXCONST_SGL(-0.18680204049569f / 8.0)}, - {FL2FXCONST_SGL(-0.62081581361840f / 8.0), - FL2FXCONST_SGL(0.75000676218956f / 8.0)}, - {FL2FXCONST_SGL(-0.43867015250812f / 8.0), - FL2FXCONST_SGL(0.99998069244322f / 8.0)}, - {FL2FXCONST_SGL(0.98630563232075f / 8.0), - FL2FXCONST_SGL(-0.53578899600662f / 8.0)}, - {FL2FXCONST_SGL(-0.61510362277374f / 8.0), - FL2FXCONST_SGL(-0.89515019899997f / 8.0)}, - {FL2FXCONST_SGL(-0.03841517601843f / 8.0), - FL2FXCONST_SGL(-0.69888815681179f / 8.0)}, - {FL2FXCONST_SGL(-0.30102157304644f / 8.0), - FL2FXCONST_SGL(-0.07667808922205f / 8.0)}, - {FL2FXCONST_SGL(0.41881284182683f / 8.0), - FL2FXCONST_SGL(0.02188098922282f / 8.0)}, - {FL2FXCONST_SGL(-0.86135454941237f / 8.0), - FL2FXCONST_SGL(0.98947480909359f / 8.0)}, - {FL2FXCONST_SGL(0.67226861393788f / 8.0), - FL2FXCONST_SGL(-0.13494389011014f / 8.0)}, - {FL2FXCONST_SGL(-0.70737398842068f / 8.0), - FL2FXCONST_SGL(-0.76547349325992f / 8.0)}, - {FL2FXCONST_SGL(0.94044946687963f / 8.0), - FL2FXCONST_SGL(0.09026201157416f / 8.0)}, - {FL2FXCONST_SGL(-0.82386352534327f / 8.0), - FL2FXCONST_SGL(0.08924768823676f / 8.0)}, - {FL2FXCONST_SGL(-0.32070666698656f / 8.0), - FL2FXCONST_SGL(0.50143421908753f / 8.0)}, - {FL2FXCONST_SGL(0.57593163224487f / 8.0), - FL2FXCONST_SGL(-0.98966422921509f / 8.0)}, - {FL2FXCONST_SGL(-0.36326018419965f / 8.0), - FL2FXCONST_SGL(0.07440243123228f / 8.0)}, - {FL2FXCONST_SGL(0.99979044674350f / 8.0), - FL2FXCONST_SGL(-0.14130287347405f / 8.0)}, - {FL2FXCONST_SGL(-0.92366023326932f / 8.0), - FL2FXCONST_SGL(-0.97979298068180f / 8.0)}, - {FL2FXCONST_SGL(-0.44607178518598f / 8.0), - FL2FXCONST_SGL(-0.54233252016394f / 8.0)}, - {FL2FXCONST_SGL(0.44226800932956f / 8.0), - FL2FXCONST_SGL(0.71326756742752f / 8.0)}, - {FL2FXCONST_SGL(0.03671907158312f / 8.0), - FL2FXCONST_SGL(0.63606389366675f / 8.0)}, - {FL2FXCONST_SGL(0.52175424682195f / 8.0), - FL2FXCONST_SGL(-0.85396826735705f / 8.0)}, - {FL2FXCONST_SGL(-0.94701139690956f / 8.0), - FL2FXCONST_SGL(-0.01826348194255f / 8.0)}, - {FL2FXCONST_SGL(-0.98759606946049f / 8.0), - FL2FXCONST_SGL(0.82288714303073f / 8.0)}, - {FL2FXCONST_SGL(0.87434794743625f / 8.0), - FL2FXCONST_SGL(0.89399495655433f / 8.0)}, - {FL2FXCONST_SGL(-0.93412041758744f / 8.0), - FL2FXCONST_SGL(0.41374052024363f / 8.0)}, - {FL2FXCONST_SGL(0.96063943315511f / 8.0), - FL2FXCONST_SGL(0.93116709541280f / 8.0)}, - {FL2FXCONST_SGL(0.97534253457837f / 8.0), - FL2FXCONST_SGL(0.86150930812689f / 8.0)}, - {FL2FXCONST_SGL(0.99642466504163f / 8.0), - FL2FXCONST_SGL(0.70190043427512f / 8.0)}, - {FL2FXCONST_SGL(-0.94705089665984f / 8.0), - FL2FXCONST_SGL(-0.29580042814306f / 8.0)}, - {FL2FXCONST_SGL(0.91599807087376f / 8.0), - FL2FXCONST_SGL(-0.98147830385781f / 8.0)}}; + {FL2FXCONST_SGL(-0.99948153278296f), FL2FXCONST_SGL(-0.59483417516607f)}, + {FL2FXCONST_SGL(0.97113454393991f), FL2FXCONST_SGL(-0.67528515225647f)}, + {FL2FXCONST_SGL(0.14130051758487f), FL2FXCONST_SGL(-0.95090983575689f)}, + {FL2FXCONST_SGL(-0.47005496701697f), FL2FXCONST_SGL(-0.37340549728647f)}, + {FL2FXCONST_SGL(0.80705063769351f), FL2FXCONST_SGL(0.29653668284408f)}, + {FL2FXCONST_SGL(-0.38981478896926f), FL2FXCONST_SGL(0.89572605717087f)}, + {FL2FXCONST_SGL(-0.01053049862020f), FL2FXCONST_SGL(-0.66959058036166f)}, + {FL2FXCONST_SGL(-0.91266367957293f), FL2FXCONST_SGL(-0.11522938140034f)}, + {FL2FXCONST_SGL(0.54840422910309f), FL2FXCONST_SGL(0.75221367176302f)}, + {FL2FXCONST_SGL(0.40009252867955f), FL2FXCONST_SGL(-0.98929400334421f)}, + {FL2FXCONST_SGL(-0.99867974711855f), FL2FXCONST_SGL(-0.88147068645358f)}, + {FL2FXCONST_SGL(-0.95531076805040f), FL2FXCONST_SGL(0.90908757154593f)}, + {FL2FXCONST_SGL(-0.45725933317144f), FL2FXCONST_SGL(-0.56716323646760f)}, + {FL2FXCONST_SGL(-0.72929675029275f), FL2FXCONST_SGL(-0.98008272727324f)}, + {FL2FXCONST_SGL(0.75622801399036f), FL2FXCONST_SGL(0.20950329995549f)}, + {FL2FXCONST_SGL(0.07069442601050f), FL2FXCONST_SGL(-0.78247898470706f)}, + {FL2FXCONST_SGL(0.74496252926055f), FL2FXCONST_SGL(-0.91169004445807f)}, + {FL2FXCONST_SGL(-0.96440182703856f), FL2FXCONST_SGL(-0.94739918296622f)}, + {FL2FXCONST_SGL(0.30424629369539f), FL2FXCONST_SGL(-0.49438267012479f)}, + {FL2FXCONST_SGL(0.66565033746925f), FL2FXCONST_SGL(0.64652935542491f)}, + {FL2FXCONST_SGL(0.91697008020594f), FL2FXCONST_SGL(0.17514097332009f)}, + {FL2FXCONST_SGL(-0.70774918760427f), FL2FXCONST_SGL(0.52548653416543f)}, + {FL2FXCONST_SGL(-0.70051415345560f), FL2FXCONST_SGL(-0.45340028808763f)}, + {FL2FXCONST_SGL(-0.99496513054797f), FL2FXCONST_SGL(-0.90071908066973f)}, + {FL2FXCONST_SGL(0.98164490790123f), FL2FXCONST_SGL(-0.77463155528697f)}, + {FL2FXCONST_SGL(-0.54671580548181f), FL2FXCONST_SGL(-0.02570928536004f)}, + {FL2FXCONST_SGL(-0.01689629065389f), FL2FXCONST_SGL(0.00287506445732f)}, + {FL2FXCONST_SGL(-0.86110349531986f), FL2FXCONST_SGL(0.42548583726477f)}, + {FL2FXCONST_SGL(-0.98892980586032f), FL2FXCONST_SGL(-0.87881132267556f)}, + {FL2FXCONST_SGL(0.51756627678691f), FL2FXCONST_SGL(0.66926784710139f)}, + {FL2FXCONST_SGL(-0.99635026409640f), FL2FXCONST_SGL(-0.58107730574765f)}, + {FL2FXCONST_SGL(-0.99969370862163f), FL2FXCONST_SGL(0.98369989360250f)}, + {FL2FXCONST_SGL(0.55266258627194f), FL2FXCONST_SGL(0.59449057465591f)}, + {FL2FXCONST_SGL(0.34581177741673f), FL2FXCONST_SGL(0.94879421061866f)}, + {FL2FXCONST_SGL(0.62664209577999f), FL2FXCONST_SGL(-0.74402970906471f)}, + {FL2FXCONST_SGL(-0.77149701404973f), FL2FXCONST_SGL(-0.33883658042801f)}, + {FL2FXCONST_SGL(-0.91592244254432f), FL2FXCONST_SGL(0.03687901376713f)}, + {FL2FXCONST_SGL(-0.76285492357887f), FL2FXCONST_SGL(-0.91371867919124f)}, + {FL2FXCONST_SGL(0.79788337195331f), FL2FXCONST_SGL(-0.93180971199849f)}, + {FL2FXCONST_SGL(0.54473080610200f), FL2FXCONST_SGL(-0.11919206037186f)}, + {FL2FXCONST_SGL(-0.85639281671058f), FL2FXCONST_SGL(0.42429854760451f)}, + {FL2FXCONST_SGL(-0.92882402971423f), FL2FXCONST_SGL(0.27871809078609f)}, + {FL2FXCONST_SGL(-0.11708371046774f), FL2FXCONST_SGL(-0.99800843444966f)}, + {FL2FXCONST_SGL(0.21356749817493f), FL2FXCONST_SGL(-0.90716295627033f)}, + {FL2FXCONST_SGL(-0.76191692573909f), FL2FXCONST_SGL(0.99768118356265f)}, + {FL2FXCONST_SGL(0.98111043100884f), FL2FXCONST_SGL(-0.95854459734407f)}, + {FL2FXCONST_SGL(-0.85913269895572f), FL2FXCONST_SGL(0.95766566168880f)}, + {FL2FXCONST_SGL(-0.93307242253692f), FL2FXCONST_SGL(0.49431757696466f)}, + {FL2FXCONST_SGL(0.30485754879632f), FL2FXCONST_SGL(-0.70540034357529f)}, + {FL2FXCONST_SGL(0.85289650925190f), FL2FXCONST_SGL(0.46766131791044f)}, + {FL2FXCONST_SGL(0.91328082618125f), FL2FXCONST_SGL(-0.99839597361769f)}, + {FL2FXCONST_SGL(-0.05890199924154f), FL2FXCONST_SGL(0.70741827819497f)}, + {FL2FXCONST_SGL(0.28398686150148f), FL2FXCONST_SGL(0.34633555702188f)}, + {FL2FXCONST_SGL(0.95258164539612f), FL2FXCONST_SGL(-0.54893416026939f)}, + {FL2FXCONST_SGL(-0.78566324168507f), FL2FXCONST_SGL(-0.75568541079691f)}, + {FL2FXCONST_SGL(-0.95789495447877f), FL2FXCONST_SGL(-0.20423194696966f)}, + {FL2FXCONST_SGL(0.82411158711197f), FL2FXCONST_SGL(0.96654618432562f)}, + {FL2FXCONST_SGL(-0.65185446735885f), FL2FXCONST_SGL(-0.88734990773289f)}, + {FL2FXCONST_SGL(-0.93643603134666f), FL2FXCONST_SGL(0.99870790442385f)}, + {FL2FXCONST_SGL(0.91427159529618f), FL2FXCONST_SGL(-0.98290505544444f)}, + {FL2FXCONST_SGL(-0.70395684036886f), FL2FXCONST_SGL(0.58796798221039f)}, + {FL2FXCONST_SGL(0.00563771969365f), FL2FXCONST_SGL(0.61768196727244f)}, + {FL2FXCONST_SGL(0.89065051931895f), FL2FXCONST_SGL(0.52783352697585f)}, + {FL2FXCONST_SGL(-0.68683707712762f), FL2FXCONST_SGL(0.80806944710339f)}, + {FL2FXCONST_SGL(0.72165342518718f), FL2FXCONST_SGL(-0.69259857349564f)}, + {FL2FXCONST_SGL(-0.62928247730667f), FL2FXCONST_SGL(0.13627037407335f)}, + {FL2FXCONST_SGL(0.29938434065514f), FL2FXCONST_SGL(-0.46051329682246f)}, + {FL2FXCONST_SGL(-0.91781958879280f), FL2FXCONST_SGL(-0.74012716684186f)}, + {FL2FXCONST_SGL(0.99298717043688f), FL2FXCONST_SGL(0.40816610075661f)}, + {FL2FXCONST_SGL(0.82368298622748f), FL2FXCONST_SGL(-0.74036047190173f)}, + {FL2FXCONST_SGL(-0.98512833386833f), FL2FXCONST_SGL(-0.99972330709594f)}, + {FL2FXCONST_SGL(-0.95915368242257f), FL2FXCONST_SGL(-0.99237800466040f)}, + {FL2FXCONST_SGL(-0.21411126572790f), FL2FXCONST_SGL(-0.93424819052545f)}, + {FL2FXCONST_SGL(-0.68821476106884f), FL2FXCONST_SGL(-0.26892306315457f)}, + {FL2FXCONST_SGL(0.91851997982317f), FL2FXCONST_SGL(0.09358228901785f)}, + {FL2FXCONST_SGL(-0.96062769559127f), FL2FXCONST_SGL(0.36099095133739f)}, + {FL2FXCONST_SGL(0.51646184922287f), FL2FXCONST_SGL(-0.71373332873917f)}, + {FL2FXCONST_SGL(0.61130721139669f), FL2FXCONST_SGL(0.46950141175917f)}, + {FL2FXCONST_SGL(0.47336129371299f), FL2FXCONST_SGL(-0.27333178296162f)}, + {FL2FXCONST_SGL(0.90998308703519f), FL2FXCONST_SGL(0.96715662938132f)}, + {FL2FXCONST_SGL(0.44844799194357f), FL2FXCONST_SGL(0.99211574628306f)}, + {FL2FXCONST_SGL(0.66614891079092f), FL2FXCONST_SGL(0.96590176169121f)}, + {FL2FXCONST_SGL(0.74922239129237f), FL2FXCONST_SGL(-0.89879858826087f)}, + {FL2FXCONST_SGL(-0.99571588506485f), FL2FXCONST_SGL(0.52785521494349f)}, + {FL2FXCONST_SGL(0.97401082477563f), FL2FXCONST_SGL(-0.16855870075190f)}, + {FL2FXCONST_SGL(0.72683747733879f), FL2FXCONST_SGL(-0.48060774432251f)}, + {FL2FXCONST_SGL(0.95432193457128f), FL2FXCONST_SGL(0.68849603408441f)}, + {FL2FXCONST_SGL(-0.72962208425191f), FL2FXCONST_SGL(-0.76608443420917f)}, + {FL2FXCONST_SGL(-0.85359479233537f), FL2FXCONST_SGL(0.88738125901579f)}, + {FL2FXCONST_SGL(-0.81412430338535f), FL2FXCONST_SGL(-0.97480768049637f)}, + {FL2FXCONST_SGL(-0.87930772356786f), FL2FXCONST_SGL(0.74748307690436f)}, + {FL2FXCONST_SGL(-0.71573331064977f), FL2FXCONST_SGL(-0.98570608178923f)}, + {FL2FXCONST_SGL(0.83524300028228f), FL2FXCONST_SGL(0.83702537075163f)}, + {FL2FXCONST_SGL(-0.48086065601423f), FL2FXCONST_SGL(-0.98848504923531f)}, + {FL2FXCONST_SGL(0.97139128574778f), FL2FXCONST_SGL(0.80093621198236f)}, + {FL2FXCONST_SGL(0.51992825347895f), FL2FXCONST_SGL(0.80247631400510f)}, + {FL2FXCONST_SGL(-0.00848591195325f), FL2FXCONST_SGL(-0.76670128000486f)}, + {FL2FXCONST_SGL(-0.70294374303036f), FL2FXCONST_SGL(0.55359910445577f)}, + {FL2FXCONST_SGL(-0.95894428168140f), FL2FXCONST_SGL(-0.43265504344783f)}, + {FL2FXCONST_SGL(0.97079252950321f), FL2FXCONST_SGL(0.09325857238682f)}, + {FL2FXCONST_SGL(-0.92404293670797f), FL2FXCONST_SGL(0.85507704027855f)}, + {FL2FXCONST_SGL(-0.69506469500450f), FL2FXCONST_SGL(0.98633412625459f)}, + {FL2FXCONST_SGL(0.26559203620024f), FL2FXCONST_SGL(0.73314307966524f)}, + {FL2FXCONST_SGL(0.28038443336943f), FL2FXCONST_SGL(0.14537913654427f)}, + {FL2FXCONST_SGL(-0.74138124825523f), FL2FXCONST_SGL(0.99310339807762f)}, + {FL2FXCONST_SGL(-0.01752795995444f), FL2FXCONST_SGL(-0.82616635284178f)}, + {FL2FXCONST_SGL(-0.55126773094930f), FL2FXCONST_SGL(-0.98898543862153f)}, + {FL2FXCONST_SGL(0.97960898850996f), FL2FXCONST_SGL(-0.94021446752851f)}, + {FL2FXCONST_SGL(-0.99196309146936f), FL2FXCONST_SGL(0.67019017358456f)}, + {FL2FXCONST_SGL(-0.67684928085260f), FL2FXCONST_SGL(0.12631491649378f)}, + {FL2FXCONST_SGL(0.09140039465500f), FL2FXCONST_SGL(-0.20537731453108f)}, + {FL2FXCONST_SGL(-0.71658965751996f), FL2FXCONST_SGL(-0.97788200391224f)}, + {FL2FXCONST_SGL(0.81014640078925f), FL2FXCONST_SGL(0.53722648362443f)}, + {FL2FXCONST_SGL(0.40616991671205f), FL2FXCONST_SGL(-0.26469008598449f)}, + {FL2FXCONST_SGL(-0.67680188682972f), FL2FXCONST_SGL(0.94502052337695f)}, + {FL2FXCONST_SGL(0.86849774348749f), FL2FXCONST_SGL(-0.18333598647899f)}, + {FL2FXCONST_SGL(-0.99500381284851f), FL2FXCONST_SGL(-0.02634122068550f)}, + {FL2FXCONST_SGL(0.84329189340667f), FL2FXCONST_SGL(0.10406957462213f)}, + {FL2FXCONST_SGL(-0.09215968531446f), FL2FXCONST_SGL(0.69540012101253f)}, + {FL2FXCONST_SGL(0.99956173327206f), FL2FXCONST_SGL(-0.12358542001404f)}, + {FL2FXCONST_SGL(-0.79732779473535f), FL2FXCONST_SGL(-0.91582524736159f)}, + {FL2FXCONST_SGL(0.96349973642406f), FL2FXCONST_SGL(0.96640458041000f)}, + {FL2FXCONST_SGL(-0.79942778496547f), FL2FXCONST_SGL(0.64323902822857f)}, + {FL2FXCONST_SGL(-0.11566039853896f), FL2FXCONST_SGL(0.28587846253726f)}, + {FL2FXCONST_SGL(-0.39922954514662f), FL2FXCONST_SGL(0.94129601616966f)}, + {FL2FXCONST_SGL(0.99089197565987f), FL2FXCONST_SGL(-0.92062625581587f)}, + {FL2FXCONST_SGL(0.28631285179909f), FL2FXCONST_SGL(-0.91035047143603f)}, + {FL2FXCONST_SGL(-0.83302725605608f), FL2FXCONST_SGL(-0.67330410892084f)}, + {FL2FXCONST_SGL(0.95404443402072f), FL2FXCONST_SGL(0.49162765398743f)}, + {FL2FXCONST_SGL(-0.06449863579434f), FL2FXCONST_SGL(0.03250560813135f)}, + {FL2FXCONST_SGL(-0.99575054486311f), FL2FXCONST_SGL(0.42389784469507f)}, + {FL2FXCONST_SGL(-0.65501142790847f), FL2FXCONST_SGL(0.82546114655624f)}, + {FL2FXCONST_SGL(-0.81254441908887f), FL2FXCONST_SGL(-0.51627234660629f)}, + {FL2FXCONST_SGL(-0.99646369485481f), FL2FXCONST_SGL(0.84490533520752f)}, + {FL2FXCONST_SGL(0.00287840603348f), FL2FXCONST_SGL(0.64768261158166f)}, + {FL2FXCONST_SGL(0.70176989408455f), FL2FXCONST_SGL(-0.20453028573322f)}, + {FL2FXCONST_SGL(0.96361882270190f), FL2FXCONST_SGL(0.40706967140989f)}, + {FL2FXCONST_SGL(-0.68883758192426f), FL2FXCONST_SGL(0.91338958840772f)}, + {FL2FXCONST_SGL(-0.34875585502238f), FL2FXCONST_SGL(0.71472290693300f)}, + {FL2FXCONST_SGL(0.91980081243087f), FL2FXCONST_SGL(0.66507455644919f)}, + {FL2FXCONST_SGL(-0.99009048343881f), FL2FXCONST_SGL(0.85868021604848f)}, + {FL2FXCONST_SGL(0.68865791458395f), FL2FXCONST_SGL(0.55660316809678f)}, + {FL2FXCONST_SGL(-0.99484402129368f), FL2FXCONST_SGL(-0.20052559254934f)}, + {FL2FXCONST_SGL(0.94214511408023f), FL2FXCONST_SGL(-0.99696425367461f)}, + {FL2FXCONST_SGL(-0.67414626793544f), FL2FXCONST_SGL(0.49548221180078f)}, + {FL2FXCONST_SGL(-0.47339353684664f), FL2FXCONST_SGL(-0.85904328834047f)}, + {FL2FXCONST_SGL(0.14323651387360f), FL2FXCONST_SGL(-0.94145598222488f)}, + {FL2FXCONST_SGL(-0.29268293575672f), FL2FXCONST_SGL(0.05759224927952f)}, + {FL2FXCONST_SGL(0.43793861458754f), FL2FXCONST_SGL(-0.78904969892724f)}, + {FL2FXCONST_SGL(-0.36345126374441f), FL2FXCONST_SGL(0.64874435357162f)}, + {FL2FXCONST_SGL(-0.08750604656825f), FL2FXCONST_SGL(0.97686944362527f)}, + {FL2FXCONST_SGL(-0.96495267812511f), FL2FXCONST_SGL(-0.53960305946511f)}, + {FL2FXCONST_SGL(0.55526940659947f), FL2FXCONST_SGL(0.78891523734774f)}, + {FL2FXCONST_SGL(0.73538215752630f), FL2FXCONST_SGL(0.96452072373404f)}, + {FL2FXCONST_SGL(-0.30889773919437f), FL2FXCONST_SGL(-0.80664389776860f)}, + {FL2FXCONST_SGL(0.03574995626194f), FL2FXCONST_SGL(-0.97325616900959f)}, + {FL2FXCONST_SGL(0.98720684660488f), FL2FXCONST_SGL(0.48409133691962f)}, + {FL2FXCONST_SGL(-0.81689296271203f), FL2FXCONST_SGL(-0.90827703628298f)}, + {FL2FXCONST_SGL(0.67866860118215f), FL2FXCONST_SGL(0.81284503870856f)}, + {FL2FXCONST_SGL(-0.15808569732583f), FL2FXCONST_SGL(0.85279555024382f)}, + {FL2FXCONST_SGL(0.80723395114371f), FL2FXCONST_SGL(-0.24717418514605f)}, + {FL2FXCONST_SGL(0.47788757329038f), FL2FXCONST_SGL(-0.46333147839295f)}, + {FL2FXCONST_SGL(0.96367554763201f), FL2FXCONST_SGL(0.38486749303242f)}, + {FL2FXCONST_SGL(-0.99143875716818f), FL2FXCONST_SGL(-0.24945277239809f)}, + {FL2FXCONST_SGL(0.83081876925833f), FL2FXCONST_SGL(-0.94780851414763f)}, + {FL2FXCONST_SGL(-0.58753191905341f), FL2FXCONST_SGL(0.01290772389163f)}, + {FL2FXCONST_SGL(0.95538108220960f), FL2FXCONST_SGL(-0.85557052096538f)}, + {FL2FXCONST_SGL(-0.96490920476211f), FL2FXCONST_SGL(-0.64020970923102f)}, + {FL2FXCONST_SGL(-0.97327101028521f), FL2FXCONST_SGL(0.12378128133110f)}, + {FL2FXCONST_SGL(0.91400366022124f), FL2FXCONST_SGL(0.57972471346930f)}, + {FL2FXCONST_SGL(-0.99925837363824f), FL2FXCONST_SGL(0.71084847864067f)}, + {FL2FXCONST_SGL(-0.86875903507313f), FL2FXCONST_SGL(-0.20291699203564f)}, + {FL2FXCONST_SGL(-0.26240034795124f), FL2FXCONST_SGL(-0.68264554369108f)}, + {FL2FXCONST_SGL(-0.24664412953388f), FL2FXCONST_SGL(-0.87642273115183f)}, + {FL2FXCONST_SGL(0.02416275806869f), FL2FXCONST_SGL(0.27192914288905f)}, + {FL2FXCONST_SGL(0.82068619590515f), FL2FXCONST_SGL(-0.85087787994476f)}, + {FL2FXCONST_SGL(0.88547373760759f), FL2FXCONST_SGL(-0.89636802901469f)}, + {FL2FXCONST_SGL(-0.18173078152226f), FL2FXCONST_SGL(-0.26152145156800f)}, + {FL2FXCONST_SGL(0.09355476558534f), FL2FXCONST_SGL(0.54845123045604f)}, + {FL2FXCONST_SGL(-0.54668414224090f), FL2FXCONST_SGL(0.95980774020221f)}, + {FL2FXCONST_SGL(0.37050990604091f), FL2FXCONST_SGL(-0.59910140383171f)}, + {FL2FXCONST_SGL(-0.70373594262891f), FL2FXCONST_SGL(0.91227665827081f)}, + {FL2FXCONST_SGL(-0.34600785879594f), FL2FXCONST_SGL(-0.99441426144200f)}, + {FL2FXCONST_SGL(-0.68774481731008f), FL2FXCONST_SGL(-0.30238837956299f)}, + {FL2FXCONST_SGL(-0.26843291251234f), FL2FXCONST_SGL(0.83115668004362f)}, + {FL2FXCONST_SGL(0.49072334613242f), FL2FXCONST_SGL(-0.45359708737775f)}, + {FL2FXCONST_SGL(0.38975993093975f), FL2FXCONST_SGL(0.95515358099121f)}, + {FL2FXCONST_SGL(-0.97757125224150f), FL2FXCONST_SGL(0.05305894580606f)}, + {FL2FXCONST_SGL(-0.17325552859616f), FL2FXCONST_SGL(-0.92770672250494f)}, + {FL2FXCONST_SGL(0.99948035025744f), FL2FXCONST_SGL(0.58285545563426f)}, + {FL2FXCONST_SGL(-0.64946246527458f), FL2FXCONST_SGL(0.68645507104960f)}, + {FL2FXCONST_SGL(-0.12016920576437f), FL2FXCONST_SGL(-0.57147322153312f)}, + {FL2FXCONST_SGL(-0.58947456517751f), FL2FXCONST_SGL(-0.34847132454388f)}, + {FL2FXCONST_SGL(-0.41815140454465f), FL2FXCONST_SGL(0.16276422358861f)}, + {FL2FXCONST_SGL(0.99885650204884f), FL2FXCONST_SGL(0.11136095490444f)}, + {FL2FXCONST_SGL(-0.56649614128386f), FL2FXCONST_SGL(-0.90494866361587f)}, + {FL2FXCONST_SGL(0.94138021032330f), FL2FXCONST_SGL(0.35281916733018f)}, + {FL2FXCONST_SGL(-0.75725076534641f), FL2FXCONST_SGL(0.53650549640587f)}, + {FL2FXCONST_SGL(0.20541973692630f), FL2FXCONST_SGL(-0.94435144369918f)}, + {FL2FXCONST_SGL(0.99980371023351f), FL2FXCONST_SGL(0.79835913565599f)}, + {FL2FXCONST_SGL(0.29078277605775f), FL2FXCONST_SGL(0.35393777921520f)}, + {FL2FXCONST_SGL(-0.62858772103030f), FL2FXCONST_SGL(0.38765693387102f)}, + {FL2FXCONST_SGL(0.43440904467688f), FL2FXCONST_SGL(-0.98546330463232f)}, + {FL2FXCONST_SGL(-0.98298583762390f), FL2FXCONST_SGL(0.21021524625209f)}, + {FL2FXCONST_SGL(0.19513029146934f), FL2FXCONST_SGL(-0.94239832251867f)}, + {FL2FXCONST_SGL(-0.95476662400101f), FL2FXCONST_SGL(0.98364554179143f)}, + {FL2FXCONST_SGL(0.93379635304810f), FL2FXCONST_SGL(-0.70881994583682f)}, + {FL2FXCONST_SGL(-0.85235410573336f), FL2FXCONST_SGL(-0.08342347966410f)}, + {FL2FXCONST_SGL(-0.86425093011245f), FL2FXCONST_SGL(-0.45795025029466f)}, + {FL2FXCONST_SGL(0.38879779059045f), FL2FXCONST_SGL(0.97274429344593f)}, + {FL2FXCONST_SGL(0.92045124735495f), FL2FXCONST_SGL(-0.62433652524220f)}, + {FL2FXCONST_SGL(0.89162532251878f), FL2FXCONST_SGL(0.54950955570563f)}, + {FL2FXCONST_SGL(-0.36834336949252f), FL2FXCONST_SGL(0.96458298020975f)}, + {FL2FXCONST_SGL(0.93891760988045f), FL2FXCONST_SGL(-0.89968353740388f)}, + {FL2FXCONST_SGL(0.99267657565094f), FL2FXCONST_SGL(-0.03757034316958f)}, + {FL2FXCONST_SGL(-0.94063471614176f), FL2FXCONST_SGL(0.41332338538963f)}, + {FL2FXCONST_SGL(0.99740224117019f), FL2FXCONST_SGL(-0.16830494996370f)}, + {FL2FXCONST_SGL(-0.35899413170555f), FL2FXCONST_SGL(-0.46633226649613f)}, + {FL2FXCONST_SGL(0.05237237274947f), FL2FXCONST_SGL(-0.25640361602661f)}, + {FL2FXCONST_SGL(0.36703583957424f), FL2FXCONST_SGL(-0.38653265641875f)}, + {FL2FXCONST_SGL(0.91653180367913f), FL2FXCONST_SGL(-0.30587628726597f)}, + {FL2FXCONST_SGL(0.69000803499316f), FL2FXCONST_SGL(0.90952171386132f)}, + {FL2FXCONST_SGL(-0.38658751133527f), FL2FXCONST_SGL(0.99501571208985f)}, + {FL2FXCONST_SGL(-0.29250814029851f), FL2FXCONST_SGL(0.37444994344615f)}, + {FL2FXCONST_SGL(-0.60182204677608f), FL2FXCONST_SGL(0.86779651036123f)}, + {FL2FXCONST_SGL(-0.97418588163217f), FL2FXCONST_SGL(0.96468523666475f)}, + {FL2FXCONST_SGL(0.88461574003963f), FL2FXCONST_SGL(0.57508405276414f)}, + {FL2FXCONST_SGL(0.05198933055162f), FL2FXCONST_SGL(0.21269661669964f)}, + {FL2FXCONST_SGL(-0.53499621979720f), FL2FXCONST_SGL(0.97241553731237f)}, + {FL2FXCONST_SGL(-0.49429560226497f), FL2FXCONST_SGL(0.98183865291903f)}, + {FL2FXCONST_SGL(-0.98935142339139f), FL2FXCONST_SGL(-0.40249159006933f)}, + {FL2FXCONST_SGL(-0.98081380091130f), FL2FXCONST_SGL(-0.72856895534041f)}, + {FL2FXCONST_SGL(-0.27338148835532f), FL2FXCONST_SGL(0.99950922447209f)}, + {FL2FXCONST_SGL(0.06310802338302f), FL2FXCONST_SGL(-0.54539587529618f)}, + {FL2FXCONST_SGL(-0.20461677199539f), FL2FXCONST_SGL(-0.14209977628489f)}, + {FL2FXCONST_SGL(0.66223843141647f), FL2FXCONST_SGL(0.72528579940326f)}, + {FL2FXCONST_SGL(-0.84764345483665f), FL2FXCONST_SGL(0.02372316801261f)}, + {FL2FXCONST_SGL(-0.89039863483811f), FL2FXCONST_SGL(0.88866581484602f)}, + {FL2FXCONST_SGL(0.95903308477986f), FL2FXCONST_SGL(0.76744927173873f)}, + {FL2FXCONST_SGL(0.73504123909879f), FL2FXCONST_SGL(-0.03747203173192f)}, + {FL2FXCONST_SGL(-0.31744434966056f), FL2FXCONST_SGL(-0.36834111883652f)}, + {FL2FXCONST_SGL(-0.34110827591623f), FL2FXCONST_SGL(0.40211222807691f)}, + {FL2FXCONST_SGL(0.47803883714199f), FL2FXCONST_SGL(-0.39423219786288f)}, + {FL2FXCONST_SGL(0.98299195879514f), FL2FXCONST_SGL(0.01989791390047f)}, + {FL2FXCONST_SGL(-0.30963073129751f), FL2FXCONST_SGL(-0.18076720599336f)}, + {FL2FXCONST_SGL(0.99992588229018f), FL2FXCONST_SGL(-0.26281872094289f)}, + {FL2FXCONST_SGL(-0.93149731080767f), FL2FXCONST_SGL(-0.98313162570490f)}, + {FL2FXCONST_SGL(0.99923472302773f), FL2FXCONST_SGL(-0.80142993767554f)}, + {FL2FXCONST_SGL(-0.26024169633417f), FL2FXCONST_SGL(-0.75999759855752f)}, + {FL2FXCONST_SGL(-0.35712514743563f), FL2FXCONST_SGL(0.19298963768574f)}, + {FL2FXCONST_SGL(-0.99899084509530f), FL2FXCONST_SGL(0.74645156992493f)}, + {FL2FXCONST_SGL(0.86557171579452f), FL2FXCONST_SGL(0.55593866696299f)}, + {FL2FXCONST_SGL(0.33408042438752f), FL2FXCONST_SGL(0.86185953874709f)}, + {FL2FXCONST_SGL(0.99010736374716f), FL2FXCONST_SGL(0.04602397576623f)}, + {FL2FXCONST_SGL(-0.66694269691195f), FL2FXCONST_SGL(-0.91643611810148f)}, + {FL2FXCONST_SGL(0.64016792079480f), FL2FXCONST_SGL(0.15649530836856f)}, + {FL2FXCONST_SGL(0.99570534804836f), FL2FXCONST_SGL(0.45844586038111f)}, + {FL2FXCONST_SGL(-0.63431466947340f), FL2FXCONST_SGL(0.21079116459234f)}, + {FL2FXCONST_SGL(-0.07706847005931f), FL2FXCONST_SGL(-0.89581437101329f)}, + {FL2FXCONST_SGL(0.98590090577724f), FL2FXCONST_SGL(0.88241721133981f)}, + {FL2FXCONST_SGL(0.80099335254678f), FL2FXCONST_SGL(-0.36851896710853f)}, + {FL2FXCONST_SGL(0.78368131392666f), FL2FXCONST_SGL(0.45506999802597f)}, + {FL2FXCONST_SGL(0.08707806671691f), FL2FXCONST_SGL(0.80938994918745f)}, + {FL2FXCONST_SGL(-0.86811883080712f), FL2FXCONST_SGL(0.39347308654705f)}, + {FL2FXCONST_SGL(-0.39466529740375f), FL2FXCONST_SGL(-0.66809432114456f)}, + {FL2FXCONST_SGL(0.97875325649683f), FL2FXCONST_SGL(-0.72467840967746f)}, + {FL2FXCONST_SGL(-0.95038560288864f), FL2FXCONST_SGL(0.89563219587625f)}, + {FL2FXCONST_SGL(0.17005239424212f), FL2FXCONST_SGL(0.54683053962658f)}, + {FL2FXCONST_SGL(-0.76910792026848f), FL2FXCONST_SGL(-0.96226617549298f)}, + {FL2FXCONST_SGL(0.99743281016846f), FL2FXCONST_SGL(0.42697157037567f)}, + {FL2FXCONST_SGL(0.95437383549973f), FL2FXCONST_SGL(0.97002324109952f)}, + {FL2FXCONST_SGL(0.99578905365569f), FL2FXCONST_SGL(-0.54106826257356f)}, + {FL2FXCONST_SGL(0.28058259829990f), FL2FXCONST_SGL(-0.85361420634036f)}, + {FL2FXCONST_SGL(0.85256524470573f), FL2FXCONST_SGL(-0.64567607735589f)}, + {FL2FXCONST_SGL(-0.50608540105128f), FL2FXCONST_SGL(-0.65846015480300f)}, + {FL2FXCONST_SGL(-0.97210735183243f), FL2FXCONST_SGL(-0.23095213067791f)}, + {FL2FXCONST_SGL(0.95424048234441f), FL2FXCONST_SGL(-0.99240147091219f)}, + {FL2FXCONST_SGL(-0.96926570524023f), FL2FXCONST_SGL(0.73775654896574f)}, + {FL2FXCONST_SGL(0.30872163214726f), FL2FXCONST_SGL(0.41514960556126f)}, + {FL2FXCONST_SGL(-0.24523839572639f), FL2FXCONST_SGL(0.63206633394807f)}, + {FL2FXCONST_SGL(-0.33813265086024f), FL2FXCONST_SGL(-0.38661779441897f)}, + {FL2FXCONST_SGL(-0.05826828420146f), FL2FXCONST_SGL(-0.06940774188029f)}, + {FL2FXCONST_SGL(-0.22898461455054f), FL2FXCONST_SGL(0.97054853316316f)}, + {FL2FXCONST_SGL(-0.18509915019881f), FL2FXCONST_SGL(0.47565762892084f)}, + {FL2FXCONST_SGL(-0.10488238045009f), FL2FXCONST_SGL(-0.87769947402394f)}, + {FL2FXCONST_SGL(-0.71886586182037f), FL2FXCONST_SGL(0.78030982480538f)}, + {FL2FXCONST_SGL(0.99793873738654f), FL2FXCONST_SGL(0.90041310491497f)}, + {FL2FXCONST_SGL(0.57563307626120f), FL2FXCONST_SGL(-0.91034337352097f)}, + {FL2FXCONST_SGL(0.28909646383717f), FL2FXCONST_SGL(0.96307783970534f)}, + {FL2FXCONST_SGL(0.42188998312520f), FL2FXCONST_SGL(0.48148651230437f)}, + {FL2FXCONST_SGL(0.93335049681047f), FL2FXCONST_SGL(-0.43537023883588f)}, + {FL2FXCONST_SGL(-0.97087374418267f), FL2FXCONST_SGL(0.86636445711364f)}, + {FL2FXCONST_SGL(0.36722871286923f), FL2FXCONST_SGL(0.65291654172961f)}, + {FL2FXCONST_SGL(-0.81093025665696f), FL2FXCONST_SGL(0.08778370229363f)}, + {FL2FXCONST_SGL(-0.26240603062237f), FL2FXCONST_SGL(-0.92774095379098f)}, + {FL2FXCONST_SGL(0.83996497984604f), FL2FXCONST_SGL(0.55839849139647f)}, + {FL2FXCONST_SGL(-0.99909615720225f), FL2FXCONST_SGL(-0.96024605713970f)}, + {FL2FXCONST_SGL(0.74649464155061f), FL2FXCONST_SGL(0.12144893606462f)}, + {FL2FXCONST_SGL(-0.74774595569805f), FL2FXCONST_SGL(-0.26898062008959f)}, + {FL2FXCONST_SGL(0.95781667469567f), FL2FXCONST_SGL(-0.79047927052628f)}, + {FL2FXCONST_SGL(0.95472308713099f), FL2FXCONST_SGL(-0.08588776019550f)}, + {FL2FXCONST_SGL(0.48708332746299f), MAXVAL_SGL}, + {FL2FXCONST_SGL(0.46332038247497f), FL2FXCONST_SGL(0.10964126185063f)}, + {FL2FXCONST_SGL(-0.76497004940162f), FL2FXCONST_SGL(0.89210929242238f)}, + {FL2FXCONST_SGL(0.57397389364339f), FL2FXCONST_SGL(0.35289703373760f)}, + {FL2FXCONST_SGL(0.75374316974495f), FL2FXCONST_SGL(0.96705214651335f)}, + {FL2FXCONST_SGL(-0.59174397685714f), FL2FXCONST_SGL(-0.89405370422752f)}, + {FL2FXCONST_SGL(0.75087906691890f), FL2FXCONST_SGL(-0.29612672982396f)}, + {FL2FXCONST_SGL(-0.98607857336230f), FL2FXCONST_SGL(0.25034911730023f)}, + {FL2FXCONST_SGL(-0.40761056640505f), FL2FXCONST_SGL(-0.90045573444695f)}, + {FL2FXCONST_SGL(0.66929266740477f), FL2FXCONST_SGL(0.98629493401748f)}, + {FL2FXCONST_SGL(-0.97463695257310f), FL2FXCONST_SGL(-0.00190223301301f)}, + {FL2FXCONST_SGL(0.90145509409859f), FL2FXCONST_SGL(0.99781390365446f)}, + {FL2FXCONST_SGL(-0.87259289048043f), FL2FXCONST_SGL(0.99233587353666f)}, + {FL2FXCONST_SGL(-0.91529461447692f), FL2FXCONST_SGL(-0.15698707534206f)}, + {FL2FXCONST_SGL(-0.03305738840705f), FL2FXCONST_SGL(-0.37205262859764f)}, + {FL2FXCONST_SGL(0.07223051368337f), FL2FXCONST_SGL(-0.88805001733626f)}, + {FL2FXCONST_SGL(0.99498012188353f), FL2FXCONST_SGL(0.97094358113387f)}, + {FL2FXCONST_SGL(-0.74904939500519f), FL2FXCONST_SGL(0.99985483641521f)}, + {FL2FXCONST_SGL(0.04585228574211f), FL2FXCONST_SGL(0.99812337444082f)}, + {FL2FXCONST_SGL(-0.89054954257993f), FL2FXCONST_SGL(-0.31791913188064f)}, + {FL2FXCONST_SGL(-0.83782144651251f), FL2FXCONST_SGL(0.97637632547466f)}, + {FL2FXCONST_SGL(0.33454804933804f), FL2FXCONST_SGL(-0.86231516800408f)}, + {FL2FXCONST_SGL(-0.99707579362824f), FL2FXCONST_SGL(0.93237990079441f)}, + {FL2FXCONST_SGL(-0.22827527843994f), FL2FXCONST_SGL(0.18874759397997f)}, + {FL2FXCONST_SGL(0.67248046289143f), FL2FXCONST_SGL(-0.03646211390569f)}, + {FL2FXCONST_SGL(-0.05146538187944f), FL2FXCONST_SGL(-0.92599700120679f)}, + {FL2FXCONST_SGL(0.99947295749905f), FL2FXCONST_SGL(0.93625229707912f)}, + {FL2FXCONST_SGL(0.66951124390363f), FL2FXCONST_SGL(0.98905825623893f)}, + {FL2FXCONST_SGL(-0.99602956559179f), FL2FXCONST_SGL(-0.44654715757688f)}, + {FL2FXCONST_SGL(0.82104905483590f), FL2FXCONST_SGL(0.99540741724928f)}, + {FL2FXCONST_SGL(0.99186510988782f), FL2FXCONST_SGL(0.72023001312947f)}, + {FL2FXCONST_SGL(-0.65284592392918f), FL2FXCONST_SGL(0.52186723253637f)}, + {FL2FXCONST_SGL(0.93885443798188f), FL2FXCONST_SGL(-0.74895312615259f)}, + {FL2FXCONST_SGL(0.96735248738388f), FL2FXCONST_SGL(0.90891816978629f)}, + {FL2FXCONST_SGL(-0.22225968841114f), FL2FXCONST_SGL(0.57124029781228f)}, + {FL2FXCONST_SGL(-0.44132783753414f), FL2FXCONST_SGL(-0.92688840659280f)}, + {FL2FXCONST_SGL(-0.85694974219574f), FL2FXCONST_SGL(0.88844532719844f)}, + {FL2FXCONST_SGL(0.91783042091762f), FL2FXCONST_SGL(-0.46356892383970f)}, + {FL2FXCONST_SGL(0.72556974415690f), FL2FXCONST_SGL(-0.99899555770747f)}, + {FL2FXCONST_SGL(-0.99711581834508f), FL2FXCONST_SGL(0.58211560180426f)}, + {FL2FXCONST_SGL(0.77638976371966f), FL2FXCONST_SGL(0.94321834873819f)}, + {FL2FXCONST_SGL(0.07717324253925f), FL2FXCONST_SGL(0.58638399856595f)}, + {FL2FXCONST_SGL(-0.56049829194163f), FL2FXCONST_SGL(0.82522301569036f)}, + {FL2FXCONST_SGL(0.98398893639988f), FL2FXCONST_SGL(0.39467440420569f)}, + {FL2FXCONST_SGL(0.47546946844938f), FL2FXCONST_SGL(0.68613044836811f)}, + {FL2FXCONST_SGL(0.65675089314631f), FL2FXCONST_SGL(0.18331637134880f)}, + {FL2FXCONST_SGL(0.03273375457980f), FL2FXCONST_SGL(-0.74933109564108f)}, + {FL2FXCONST_SGL(-0.38684144784738f), FL2FXCONST_SGL(0.51337349030406f)}, + {FL2FXCONST_SGL(-0.97346267944545f), FL2FXCONST_SGL(-0.96549364384098f)}, + {FL2FXCONST_SGL(-0.53282156061942f), FL2FXCONST_SGL(-0.91423265091354f)}, + {FL2FXCONST_SGL(0.99817310731176f), FL2FXCONST_SGL(0.61133572482148f)}, + {FL2FXCONST_SGL(-0.50254500772635f), FL2FXCONST_SGL(-0.88829338134294f)}, + {FL2FXCONST_SGL(0.01995873238855f), FL2FXCONST_SGL(0.85223515096765f)}, + {FL2FXCONST_SGL(0.99930381973804f), FL2FXCONST_SGL(0.94578896296649f)}, + {FL2FXCONST_SGL(0.82907767600783f), FL2FXCONST_SGL(-0.06323442598128f)}, + {FL2FXCONST_SGL(-0.58660709669728f), FL2FXCONST_SGL(0.96840773806582f)}, + {FL2FXCONST_SGL(-0.17573736667267f), FL2FXCONST_SGL(-0.48166920859485f)}, + {FL2FXCONST_SGL(0.83434292401346f), FL2FXCONST_SGL(-0.13023450646997f)}, + {FL2FXCONST_SGL(0.05946491307025f), FL2FXCONST_SGL(0.20511047074866f)}, + {FL2FXCONST_SGL(0.81505484574602f), FL2FXCONST_SGL(-0.94685947861369f)}, + {FL2FXCONST_SGL(-0.44976380954860f), FL2FXCONST_SGL(0.40894572671545f)}, + {FL2FXCONST_SGL(-0.89746474625671f), FL2FXCONST_SGL(0.99846578838537f)}, + {FL2FXCONST_SGL(0.39677256130792f), FL2FXCONST_SGL(-0.74854668609359f)}, + {FL2FXCONST_SGL(-0.07588948563079f), FL2FXCONST_SGL(0.74096214084170f)}, + {FL2FXCONST_SGL(0.76343198951445f), FL2FXCONST_SGL(0.41746629422634f)}, + {FL2FXCONST_SGL(-0.74490104699626f), FL2FXCONST_SGL(0.94725911744610f)}, + {FL2FXCONST_SGL(0.64880119792759f), FL2FXCONST_SGL(0.41336660830571f)}, + {FL2FXCONST_SGL(0.62319537462542f), FL2FXCONST_SGL(-0.93098313552599f)}, + {FL2FXCONST_SGL(0.42215817594807f), FL2FXCONST_SGL(-0.07712787385208f)}, + {FL2FXCONST_SGL(0.02704554141885f), FL2FXCONST_SGL(-0.05417518053666f)}, + {FL2FXCONST_SGL(0.80001773566818f), FL2FXCONST_SGL(0.91542195141039f)}, + {FL2FXCONST_SGL(-0.79351832348816f), FL2FXCONST_SGL(-0.36208897989136f)}, + {FL2FXCONST_SGL(0.63872359151636f), FL2FXCONST_SGL(0.08128252493444f)}, + {FL2FXCONST_SGL(0.52890520960295f), FL2FXCONST_SGL(0.60048872455592f)}, + {FL2FXCONST_SGL(0.74238552914587f), FL2FXCONST_SGL(0.04491915291044f)}, + {FL2FXCONST_SGL(0.99096131449250f), FL2FXCONST_SGL(-0.19451182854402f)}, + {FL2FXCONST_SGL(-0.80412329643109f), FL2FXCONST_SGL(-0.88513818199457f)}, + {FL2FXCONST_SGL(-0.64612616129736f), FL2FXCONST_SGL(0.72198674804544f)}, + {FL2FXCONST_SGL(0.11657770663191f), FL2FXCONST_SGL(-0.83662833815041f)}, + {FL2FXCONST_SGL(-0.95053182488101f), FL2FXCONST_SGL(-0.96939905138082f)}, + {FL2FXCONST_SGL(-0.62228872928622f), FL2FXCONST_SGL(0.82767262846661f)}, + {FL2FXCONST_SGL(0.03004475787316f), FL2FXCONST_SGL(-0.99738896333384f)}, + {FL2FXCONST_SGL(-0.97987214341034f), FL2FXCONST_SGL(0.36526129686425f)}, + {FL2FXCONST_SGL(-0.99986980746200f), FL2FXCONST_SGL(-0.36021610299715f)}, + {FL2FXCONST_SGL(0.89110648599879f), FL2FXCONST_SGL(-0.97894250343044f)}, + {FL2FXCONST_SGL(0.10407960510582f), FL2FXCONST_SGL(0.77357793811619f)}, + {FL2FXCONST_SGL(0.95964737821728f), FL2FXCONST_SGL(-0.35435818285502f)}, + {FL2FXCONST_SGL(0.50843233159162f), FL2FXCONST_SGL(0.96107691266205f)}, + {FL2FXCONST_SGL(0.17006334670615f), FL2FXCONST_SGL(-0.76854025314829f)}, + {FL2FXCONST_SGL(0.25872675063360f), FL2FXCONST_SGL(0.99893303933816f)}, + {FL2FXCONST_SGL(-0.01115998681937f), FL2FXCONST_SGL(0.98496019742444f)}, + {FL2FXCONST_SGL(-0.79598702973261f), FL2FXCONST_SGL(0.97138411318894f)}, + {FL2FXCONST_SGL(-0.99264708948101f), FL2FXCONST_SGL(-0.99542822402536f)}, + {FL2FXCONST_SGL(-0.99829663752818f), FL2FXCONST_SGL(0.01877138824311f)}, + {FL2FXCONST_SGL(-0.70801016548184f), FL2FXCONST_SGL(0.33680685948117f)}, + {FL2FXCONST_SGL(-0.70467057786826f), FL2FXCONST_SGL(0.93272777501857f)}, + {FL2FXCONST_SGL(0.99846021905254f), FL2FXCONST_SGL(-0.98725746254433f)}, + {FL2FXCONST_SGL(-0.63364968534650f), FL2FXCONST_SGL(-0.16473594423746f)}, + {FL2FXCONST_SGL(-0.16258217500792f), FL2FXCONST_SGL(-0.95939125400802f)}, + {FL2FXCONST_SGL(-0.43645594360633f), FL2FXCONST_SGL(-0.94805030113284f)}, + {FL2FXCONST_SGL(-0.99848471702976f), FL2FXCONST_SGL(0.96245166923809f)}, + {FL2FXCONST_SGL(-0.16796458968998f), FL2FXCONST_SGL(-0.98987511890470f)}, + {FL2FXCONST_SGL(-0.87979225745213f), FL2FXCONST_SGL(-0.71725725041680f)}, + {FL2FXCONST_SGL(0.44183099021786f), FL2FXCONST_SGL(-0.93568974498761f)}, + {FL2FXCONST_SGL(0.93310180125532f), FL2FXCONST_SGL(-0.99913308068246f)}, + {FL2FXCONST_SGL(-0.93941931782002f), FL2FXCONST_SGL(-0.56409379640356f)}, + {FL2FXCONST_SGL(-0.88590003188677f), FL2FXCONST_SGL(0.47624600491382f)}, + {FL2FXCONST_SGL(0.99971463703691f), FL2FXCONST_SGL(-0.83889954253462f)}, + {FL2FXCONST_SGL(-0.75376385639978f), FL2FXCONST_SGL(0.00814643438625f)}, + {FL2FXCONST_SGL(0.93887685615875f), FL2FXCONST_SGL(-0.11284528204636f)}, + {FL2FXCONST_SGL(0.85126435782309f), FL2FXCONST_SGL(0.52349251543547f)}, + {FL2FXCONST_SGL(0.39701421446381f), FL2FXCONST_SGL(0.81779634174316f)}, + {FL2FXCONST_SGL(-0.37024464187437f), FL2FXCONST_SGL(-0.87071656222959f)}, + {FL2FXCONST_SGL(-0.36024828242896f), FL2FXCONST_SGL(0.34655735648287f)}, + {FL2FXCONST_SGL(-0.93388812549209f), FL2FXCONST_SGL(-0.84476541096429f)}, + {FL2FXCONST_SGL(-0.65298804552119f), FL2FXCONST_SGL(-0.18439575450921f)}, + {FL2FXCONST_SGL(0.11960319006843f), FL2FXCONST_SGL(0.99899346780168f)}, + {FL2FXCONST_SGL(0.94292565553160f), FL2FXCONST_SGL(0.83163906518293f)}, + {FL2FXCONST_SGL(0.75081145286948f), FL2FXCONST_SGL(-0.35533223142265f)}, + {FL2FXCONST_SGL(0.56721979748394f), FL2FXCONST_SGL(-0.24076836414499f)}, + {FL2FXCONST_SGL(0.46857766746029f), FL2FXCONST_SGL(-0.30140233457198f)}, + {FL2FXCONST_SGL(0.97312313923635f), FL2FXCONST_SGL(-0.99548191630031f)}, + {FL2FXCONST_SGL(-0.38299976567017f), FL2FXCONST_SGL(0.98516909715427f)}, + {FL2FXCONST_SGL(0.41025800019463f), FL2FXCONST_SGL(0.02116736935734f)}, + {FL2FXCONST_SGL(0.09638062008048f), FL2FXCONST_SGL(0.04411984381457f)}, + {FL2FXCONST_SGL(-0.85283249275397f), FL2FXCONST_SGL(0.91475563922421f)}, + {FL2FXCONST_SGL(0.88866808958124f), FL2FXCONST_SGL(-0.99735267083226f)}, + {FL2FXCONST_SGL(-0.48202429536989f), FL2FXCONST_SGL(-0.96805608884164f)}, + {FL2FXCONST_SGL(0.27572582416567f), FL2FXCONST_SGL(0.58634753335832f)}, + {FL2FXCONST_SGL(-0.65889129659168f), FL2FXCONST_SGL(0.58835634138583f)}, + {FL2FXCONST_SGL(0.98838086953732f), FL2FXCONST_SGL(0.99994349600236f)}, + {FL2FXCONST_SGL(-0.20651349620689f), FL2FXCONST_SGL(0.54593044066355f)}, + {FL2FXCONST_SGL(-0.62126416356920f), FL2FXCONST_SGL(-0.59893681700392f)}, + {FL2FXCONST_SGL(0.20320105410437f), FL2FXCONST_SGL(-0.86879180355289f)}, + {FL2FXCONST_SGL(-0.97790548600584f), FL2FXCONST_SGL(0.96290806999242f)}, + {FL2FXCONST_SGL(0.11112534735126f), FL2FXCONST_SGL(0.21484763313301f)}, + {FL2FXCONST_SGL(-0.41368337314182f), FL2FXCONST_SGL(0.28216837680365f)}, + {FL2FXCONST_SGL(0.24133038992960f), FL2FXCONST_SGL(0.51294362630238f)}, + {FL2FXCONST_SGL(-0.66393410674885f), FL2FXCONST_SGL(-0.08249679629081f)}, + {FL2FXCONST_SGL(-0.53697829178752f), FL2FXCONST_SGL(-0.97649903936228f)}, + {FL2FXCONST_SGL(-0.97224737889348f), FL2FXCONST_SGL(0.22081333579837f)}, + {FL2FXCONST_SGL(0.87392477144549f), FL2FXCONST_SGL(-0.12796173740361f)}, + {FL2FXCONST_SGL(0.19050361015753f), FL2FXCONST_SGL(0.01602615387195f)}, + {FL2FXCONST_SGL(-0.46353441212724f), FL2FXCONST_SGL(-0.95249041539006f)}, + {FL2FXCONST_SGL(-0.07064096339021f), FL2FXCONST_SGL(-0.94479803205886f)}, + {FL2FXCONST_SGL(-0.92444085484466f), FL2FXCONST_SGL(-0.10457590187436f)}, + {FL2FXCONST_SGL(-0.83822593578728f), FL2FXCONST_SGL(-0.01695043208885f)}, + {FL2FXCONST_SGL(0.75214681811150f), FL2FXCONST_SGL(-0.99955681042665f)}, + {FL2FXCONST_SGL(-0.42102998829339f), FL2FXCONST_SGL(0.99720941999394f)}, + {FL2FXCONST_SGL(-0.72094786237696f), FL2FXCONST_SGL(-0.35008961934255f)}, + {FL2FXCONST_SGL(0.78843311019251f), FL2FXCONST_SGL(0.52851398958271f)}, + {FL2FXCONST_SGL(0.97394027897442f), FL2FXCONST_SGL(-0.26695944086561f)}, + {FL2FXCONST_SGL(0.99206463477946f), FL2FXCONST_SGL(-0.57010120849429f)}, + {FL2FXCONST_SGL(0.76789609461795f), FL2FXCONST_SGL(-0.76519356730966f)}, + {FL2FXCONST_SGL(-0.82002421836409f), FL2FXCONST_SGL(-0.73530179553767f)}, + {FL2FXCONST_SGL(0.81924990025724f), FL2FXCONST_SGL(0.99698425250579f)}, + {FL2FXCONST_SGL(-0.26719850873357f), FL2FXCONST_SGL(0.68903369776193f)}, + {FL2FXCONST_SGL(-0.43311260380975f), FL2FXCONST_SGL(0.85321815947490f)}, + {FL2FXCONST_SGL(0.99194979673836f), FL2FXCONST_SGL(0.91876249766422f)}, + {FL2FXCONST_SGL(-0.80692001248487f), FL2FXCONST_SGL(-0.32627540663214f)}, + {FL2FXCONST_SGL(0.43080003649976f), FL2FXCONST_SGL(-0.21919095636638f)}, + {FL2FXCONST_SGL(0.67709491937357f), FL2FXCONST_SGL(-0.95478075822906f)}, + {FL2FXCONST_SGL(0.56151770568316f), FL2FXCONST_SGL(-0.70693811747778f)}, + {FL2FXCONST_SGL(0.10831862810749f), FL2FXCONST_SGL(-0.08628837174592f)}, + {FL2FXCONST_SGL(0.91229417540436f), FL2FXCONST_SGL(-0.65987351408410f)}, + {FL2FXCONST_SGL(-0.48972893932274f), FL2FXCONST_SGL(0.56289246362686f)}, + {FL2FXCONST_SGL(-0.89033658689697f), FL2FXCONST_SGL(-0.71656563987082f)}, + {FL2FXCONST_SGL(0.65269447475094f), FL2FXCONST_SGL(0.65916004833932f)}, + {FL2FXCONST_SGL(0.67439478141121f), FL2FXCONST_SGL(-0.81684380846796f)}, + {FL2FXCONST_SGL(-0.47770832416973f), FL2FXCONST_SGL(-0.16789556203025f)}, + {FL2FXCONST_SGL(-0.99715979260878f), FL2FXCONST_SGL(-0.93565784007648f)}, + {FL2FXCONST_SGL(-0.90889593602546f), FL2FXCONST_SGL(0.62034397054380f)}, + {FL2FXCONST_SGL(-0.06618622548177f), FL2FXCONST_SGL(-0.23812217221359f)}, + {FL2FXCONST_SGL(0.99430266919728f), FL2FXCONST_SGL(0.18812555317553f)}, + {FL2FXCONST_SGL(0.97686402381843f), FL2FXCONST_SGL(-0.28664534366620f)}, + {FL2FXCONST_SGL(0.94813650221268f), FL2FXCONST_SGL(-0.97506640027128f)}, + {FL2FXCONST_SGL(-0.95434497492853f), FL2FXCONST_SGL(-0.79607978501983f)}, + {FL2FXCONST_SGL(-0.49104783137150f), FL2FXCONST_SGL(0.32895214359663f)}, + {FL2FXCONST_SGL(0.99881175120751f), FL2FXCONST_SGL(0.88993983831354f)}, + {FL2FXCONST_SGL(0.50449166760303f), FL2FXCONST_SGL(-0.85995072408434f)}, + {FL2FXCONST_SGL(0.47162891065108f), FL2FXCONST_SGL(-0.18680204049569f)}, + {FL2FXCONST_SGL(-0.62081581361840f), FL2FXCONST_SGL(0.75000676218956f)}, + {FL2FXCONST_SGL(-0.43867015250812f), FL2FXCONST_SGL(0.99998069244322f)}, + {FL2FXCONST_SGL(0.98630563232075f), FL2FXCONST_SGL(-0.53578899600662f)}, + {FL2FXCONST_SGL(-0.61510362277374f), FL2FXCONST_SGL(-0.89515019899997f)}, + {FL2FXCONST_SGL(-0.03841517601843f), FL2FXCONST_SGL(-0.69888815681179f)}, + {FL2FXCONST_SGL(-0.30102157304644f), FL2FXCONST_SGL(-0.07667808922205f)}, + {FL2FXCONST_SGL(0.41881284182683f), FL2FXCONST_SGL(0.02188098922282f)}, + {FL2FXCONST_SGL(-0.86135454941237f), FL2FXCONST_SGL(0.98947480909359f)}, + {FL2FXCONST_SGL(0.67226861393788f), FL2FXCONST_SGL(-0.13494389011014f)}, + {FL2FXCONST_SGL(-0.70737398842068f), FL2FXCONST_SGL(-0.76547349325992f)}, + {FL2FXCONST_SGL(0.94044946687963f), FL2FXCONST_SGL(0.09026201157416f)}, + {FL2FXCONST_SGL(-0.82386352534327f), FL2FXCONST_SGL(0.08924768823676f)}, + {FL2FXCONST_SGL(-0.32070666698656f), FL2FXCONST_SGL(0.50143421908753f)}, + {FL2FXCONST_SGL(0.57593163224487f), FL2FXCONST_SGL(-0.98966422921509f)}, + {FL2FXCONST_SGL(-0.36326018419965f), FL2FXCONST_SGL(0.07440243123228f)}, + {FL2FXCONST_SGL(0.99979044674350f), FL2FXCONST_SGL(-0.14130287347405f)}, + {FL2FXCONST_SGL(-0.92366023326932f), FL2FXCONST_SGL(-0.97979298068180f)}, + {FL2FXCONST_SGL(-0.44607178518598f), FL2FXCONST_SGL(-0.54233252016394f)}, + {FL2FXCONST_SGL(0.44226800932956f), FL2FXCONST_SGL(0.71326756742752f)}, + {FL2FXCONST_SGL(0.03671907158312f), FL2FXCONST_SGL(0.63606389366675f)}, + {FL2FXCONST_SGL(0.52175424682195f), FL2FXCONST_SGL(-0.85396826735705f)}, + {FL2FXCONST_SGL(-0.94701139690956f), FL2FXCONST_SGL(-0.01826348194255f)}, + {FL2FXCONST_SGL(-0.98759606946049f), FL2FXCONST_SGL(0.82288714303073f)}, + {FL2FXCONST_SGL(0.87434794743625f), FL2FXCONST_SGL(0.89399495655433f)}, + {FL2FXCONST_SGL(-0.93412041758744f), FL2FXCONST_SGL(0.41374052024363f)}, + {FL2FXCONST_SGL(0.96063943315511f), FL2FXCONST_SGL(0.93116709541280f)}, + {FL2FXCONST_SGL(0.97534253457837f), FL2FXCONST_SGL(0.86150930812689f)}, + {FL2FXCONST_SGL(0.99642466504163f), FL2FXCONST_SGL(0.70190043427512f)}, + {FL2FXCONST_SGL(-0.94705089665984f), FL2FXCONST_SGL(-0.29580042814306f)}, + {FL2FXCONST_SGL(0.91599807087376f), FL2FXCONST_SGL(-0.98147830385781f)}}; //@} /* From f6a6a071a9b39fd62d0f81ddba793c00cae68a49 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:10:18 +0100 Subject: [PATCH 24/26] Improve phase coding accuracy by use of splitAngle lookup table. Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I7fd83b478f4156a0abb7ac42cd6d9b6cf0ac8b91 --- libSACdec/src/sac_calcM1andM2.cpp | 84 +- libSACdec/src/sac_rom.cpp | 3756 ++++++++++++++++++++++++++++- libSACdec/src/sac_rom.h | 1 + 3 files changed, 3760 insertions(+), 81 deletions(-) diff --git a/libSACdec/src/sac_calcM1andM2.cpp b/libSACdec/src/sac_calcM1andM2.cpp index 6e5a145..5826275 100644 --- a/libSACdec/src/sac_calcM1andM2.cpp +++ b/libSACdec/src/sac_calcM1andM2.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -474,80 +474,6 @@ static const FIXP_DBL CLD_m[N_CLD] = { FL2FXCONST_DBL(0.888178419700125), }; -static FIXP_DBL dequantIPD_CLD_ICC_splitAngle__FDK_Function(INT ipdIdx, - INT cldIdx, - INT iccIdx) { - FIXP_DBL cld; - SpatialDequantGetCLD2Values(cldIdx, &cld); - - /*const FIXP_DBL one_m = (FIXP_DBL)MAXVAL_DBL; - const int one_e = 0;*/ - const FIXP_DBL one_m = FL2FXCONST_DBL(0.5f); - const int one_e = 1; - /* iidLin = sqrt(cld); */ - FIXP_DBL iidLin_m = sqrt_CLD_m[cldIdx]; - int iidLin_e = sqrt_CLD_e[cldIdx]; - /* iidLin2 = cld; */ - FIXP_DBL iidLin2_m = CLD_m[cldIdx]; - int iidLin2_e = sqrt_CLD_e[cldIdx] << 1; - /* iidLin21 = iidLin2 + 1.0f; */ - int iidLin21_e; - FIXP_DBL iidLin21_m = - fAddNorm(iidLin2_m, iidLin2_e, one_m, one_e, &iidLin21_e); - /* iidIcc2 = iidLin * icc * 2.0f; */ - FIXP_CFG icc = dequantICC__FDK[iccIdx]; - FIXP_DBL temp1_m, temp1c_m; - int temp1_e, temp1c_e; - temp1_m = fMult(iidLin_m, icc); - temp1_e = iidLin_e + 1; - - FIXP_DBL cosIpd, sinIpd; - cosIpd = COS_IPD(ipdIdx); - sinIpd = SIN_IPD(ipdIdx); - - temp1c_m = fMult(temp1_m, cosIpd); - temp1c_e = temp1_e; //+cosIpd_e; - - int temp2_e, temp3_e, inv_temp3_e, ratio_e; - FIXP_DBL temp2_m = - fAddNorm(iidLin21_m, iidLin21_e, temp1c_m, temp1c_e, &temp2_e); - FIXP_DBL temp3_m = - fAddNorm(iidLin21_m, iidLin21_e, temp1_m, temp1_e, &temp3_e); - /* calculate 1/temp3 needed later */ - inv_temp3_e = temp3_e; - FIXP_DBL inv_temp3_m = invFixp(temp3_m, &inv_temp3_e); - FIXP_DBL ratio_m = - fAddNorm(fMult(inv_temp3_m, temp2_m), (inv_temp3_e + temp2_e), - FL2FXCONST_DBL(1e-9f), 0, &ratio_e); - - int weight2_e, tempb_atan2_e; - FIXP_DBL weight2_m = - fPow(ratio_m, ratio_e, FL2FXCONST_DBL(0.5f), -1, &weight2_e); - /* atan2(w2*sinIpd, w1*iidLin + w2*cosIpd) = atan2(w2*sinIpd, (2 - w2)*iidLin - * + w2*cosIpd) = atan2(w2*sinIpd, 2*iidLin + w2*(cosIpd - iidLin)); */ - /* tmpa_atan2 = w2*sinIpd; tmpb_atan2 = 2*iidLin + w2*(cosIpd - iidLin); */ - FIXP_DBL tempb_atan2_m = iidLin_m; - tempb_atan2_e = iidLin_e + 1; - int add_tmp1_e = 0; - FIXP_DBL add_tmp1_m = fAddNorm(cosIpd, 0, -iidLin_m, iidLin_e, &add_tmp1_e); - FIXP_DBL add_tmp2_m = fMult(add_tmp1_m, weight2_m); - int add_tmp2_e = add_tmp1_e + weight2_e; - tempb_atan2_m = fAddNorm(tempb_atan2_m, tempb_atan2_e, add_tmp2_m, add_tmp2_e, - &tempb_atan2_e); - - FIXP_DBL tempa_atan2_m = fMult(weight2_m, sinIpd); - int tempa_atan2_e = weight2_e; // + sinIpd_e; - - if (tempa_atan2_e > tempb_atan2_e) { - tempb_atan2_m = (tempb_atan2_m >> (tempa_atan2_e - tempb_atan2_e)); - tempb_atan2_e = tempa_atan2_e; - } else if (tempb_atan2_e > tempa_atan2_e) { - tempa_atan2_m = (tempa_atan2_m >> (tempb_atan2_e - tempa_atan2_e)); - } - - return fixp_atan2(tempa_atan2_m, tempb_atan2_m); -} - static void calculateOpd(spatialDec* self, INT ottBoxIndx, INT parameterSetIndx, FIXP_DBL opd[MAX_PARAMETER_BANDS]) { INT band; @@ -563,12 +489,12 @@ static void calculateOpd(spatialDec* self, INT ottBoxIndx, INT parameterSetIndx, SpatialDequantGetCLD2Values(idxCld, &cld); /* ipd(idxIpd==8) == PI */ - if ((cld == FL2FXCONST_DBL(0.0f)) && (idxIpd == 8)) { + if (((cld == FL2FXCONST_DBL(0.0f)) && (idxIpd == 8)) || (idxIpd == 0)) { opd[2 * band] = FL2FXCONST_DBL(0.0f); } else { - opd[2 * band] = (dequantIPD_CLD_ICC_splitAngle__FDK_Function( - idxIpd, idxCld, idxIcc) >> - (IPD_SCALE - AT2O_SF)); + FDK_ASSERT(idxIpd > 0); + opd[2 * band] = + dequantIPD_CLD_ICC_splitAngle__FDK[idxIpd - 1][idxCld][idxIcc]; } opd[2 * band + 1] = opd[2 * band] - ipd; } diff --git a/libSACdec/src/sac_rom.cpp b/libSACdec/src/sac_rom.cpp index 4285b65..600203f 100644 --- a/libSACdec/src/sac_rom.cpp +++ b/libSACdec/src/sac_rom.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -163,7 +163,7 @@ const FIXP_CFG dequantIPD__FDK[16] = { SCALE_IPD(4.71238898038469f), SCALE_IPD(5.105088062f), SCALE_IPD(5.49778714378214f), SCALE_IPD(5.890486225f)}; -#define SCALE_SPLIT_ANGLE(a) (FL2FXCONST_CFG(a / (float)(1 << IPD_SCALE))) +#define SCALE_SPLIT_ANGLE(a) (FL2FXCONST_DBL(a / (float)(1 << IPD_SCALE))) /* Generate table dequantIPD_CLD_ICC_splitAngle__FDK[16][31][8]: @@ -200,6 +200,3758 @@ const FIXP_CFG dequantIPD__FDK[16] = { atan2(w2 * sinIpd, w1 * iidLin + w2 * cosIpd); } */ +const FIXP_DBL dequantIPD_CLD_ICC_splitAngle__FDK[15][31][8] = { + { + {SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.39269909262657)}, + {SCALE_SPLIT_ANGLE(0.39055734872818), + SCALE_SPLIT_ANGLE(0.39055740833282), + SCALE_SPLIT_ANGLE(0.39055749773979), + SCALE_SPLIT_ANGLE(0.39055770635605), + SCALE_SPLIT_ANGLE(0.39055791497231), + SCALE_SPLIT_ANGLE(0.39055824279785), + SCALE_SPLIT_ANGLE(0.39055877923965), + SCALE_SPLIT_ANGLE(0.39055916666985)}, + {SCALE_SPLIT_ANGLE(0.38890451192856), + SCALE_SPLIT_ANGLE(0.38890469074249), + SCALE_SPLIT_ANGLE(0.38890495896339), + SCALE_SPLIT_ANGLE(0.38890564441681), + SCALE_SPLIT_ANGLE(0.38890630006790), + SCALE_SPLIT_ANGLE(0.38890734314919), + SCALE_SPLIT_ANGLE(0.38890904188156), + SCALE_SPLIT_ANGLE(0.38891020417213)}, + {SCALE_SPLIT_ANGLE(0.38599541783333), + SCALE_SPLIT_ANGLE(0.38599592447281), + SCALE_SPLIT_ANGLE(0.38599672913551), + SCALE_SPLIT_ANGLE(0.38599878549576), + SCALE_SPLIT_ANGLE(0.38600078225136), + SCALE_SPLIT_ANGLE(0.38600403070450), + SCALE_SPLIT_ANGLE(0.38600939512253), + SCALE_SPLIT_ANGLE(0.38601315021515)}, + {SCALE_SPLIT_ANGLE(0.38091576099396), + SCALE_SPLIT_ANGLE(0.38091731071472), + SCALE_SPLIT_ANGLE(0.38091966509819), + SCALE_SPLIT_ANGLE(0.38092571496964), + SCALE_SPLIT_ANGLE(0.38093179464340), + SCALE_SPLIT_ANGLE(0.38094165921211), + SCALE_SPLIT_ANGLE(0.38095843791962), + SCALE_SPLIT_ANGLE(0.38097056746483)}, + {SCALE_SPLIT_ANGLE(0.37216997146606), + SCALE_SPLIT_ANGLE(0.37217426300049), + SCALE_SPLIT_ANGLE(0.37218090891838), + SCALE_SPLIT_ANGLE(0.37219807505608), + SCALE_SPLIT_ANGLE(0.37221556901932), + SCALE_SPLIT_ANGLE(0.37224492430687), + SCALE_SPLIT_ANGLE(0.37229704856873), + SCALE_SPLIT_ANGLE(0.37233674526215)}, + {SCALE_SPLIT_ANGLE(0.36424967646599), + SCALE_SPLIT_ANGLE(0.36425727605820), + SCALE_SPLIT_ANGLE(0.36426907777786), + SCALE_SPLIT_ANGLE(0.36430004239082), + SCALE_SPLIT_ANGLE(0.36433213949203), + SCALE_SPLIT_ANGLE(0.36438730359077), + SCALE_SPLIT_ANGLE(0.36448970437050), + SCALE_SPLIT_ANGLE(0.36457163095474)}, + {SCALE_SPLIT_ANGLE(0.35356888175011), + SCALE_SPLIT_ANGLE(0.35358175635338), + SCALE_SPLIT_ANGLE(0.35360190272331), + SCALE_SPLIT_ANGLE(0.35365560650826), + SCALE_SPLIT_ANGLE(0.35371258854866), + SCALE_SPLIT_ANGLE(0.35381385684013), + SCALE_SPLIT_ANGLE(0.35401365160942), + SCALE_SPLIT_ANGLE(0.35418578982353)}, + {SCALE_SPLIT_ANGLE(0.33942583203316), + SCALE_SPLIT_ANGLE(0.33944645524025), + SCALE_SPLIT_ANGLE(0.33947896957397), + SCALE_SPLIT_ANGLE(0.33956742286682), + SCALE_SPLIT_ANGLE(0.33966416120529), + SCALE_SPLIT_ANGLE(0.33984372019768), + SCALE_SPLIT_ANGLE(0.34023007750511), + SCALE_SPLIT_ANGLE(0.34060221910477)}, + {SCALE_SPLIT_ANGLE(0.32115450501442), + SCALE_SPLIT_ANGLE(0.32118520140648), + SCALE_SPLIT_ANGLE(0.32123416662216), + SCALE_SPLIT_ANGLE(0.32137048244476), + SCALE_SPLIT_ANGLE(0.32152509689331), + SCALE_SPLIT_ANGLE(0.32182863354683), + SCALE_SPLIT_ANGLE(0.32256561517715), + SCALE_SPLIT_ANGLE(0.32340893149376)}, + {SCALE_SPLIT_ANGLE(0.29830521345139), + SCALE_SPLIT_ANGLE(0.29834723472595), + SCALE_SPLIT_ANGLE(0.29841500520706), + SCALE_SPLIT_ANGLE(0.29860860109329), + SCALE_SPLIT_ANGLE(0.29883742332458), + SCALE_SPLIT_ANGLE(0.29931786656380), + SCALE_SPLIT_ANGLE(0.30069106817245), + SCALE_SPLIT_ANGLE(0.30275771021843)}, + {SCALE_SPLIT_ANGLE(0.28050789237022), + SCALE_SPLIT_ANGLE(0.28055712580681), + SCALE_SPLIT_ANGLE(0.28063708543777), + SCALE_SPLIT_ANGLE(0.28086942434311), + SCALE_SPLIT_ANGLE(0.28115189075470), + SCALE_SPLIT_ANGLE(0.28177404403687), + SCALE_SPLIT_ANGLE(0.28380545973778), + SCALE_SPLIT_ANGLE(0.28782638907433)}, + {SCALE_SPLIT_ANGLE(0.26083287596703), + SCALE_SPLIT_ANGLE(0.26088824868202), + SCALE_SPLIT_ANGLE(0.26097872853279), + SCALE_SPLIT_ANGLE(0.26124578714371), + SCALE_SPLIT_ANGLE(0.26157897710800), + SCALE_SPLIT_ANGLE(0.26234793663025), + SCALE_SPLIT_ANGLE(0.26525345444679), + SCALE_SPLIT_ANGLE(0.27373576164246)}, + {SCALE_SPLIT_ANGLE(0.23960022628307), + SCALE_SPLIT_ANGLE(0.23966011404991), + SCALE_SPLIT_ANGLE(0.23975846171379), + SCALE_SPLIT_ANGLE(0.24005253612995), + SCALE_SPLIT_ANGLE(0.24042735993862), + SCALE_SPLIT_ANGLE(0.24132782220840), + SCALE_SPLIT_ANGLE(0.24525125324726), + SCALE_SPLIT_ANGLE(0.26534587144852)}, + {SCALE_SPLIT_ANGLE(0.21727463603020), + SCALE_SPLIT_ANGLE(0.21733720600605), + SCALE_SPLIT_ANGLE(0.21744030714035), + SCALE_SPLIT_ANGLE(0.21775111556053), + SCALE_SPLIT_ANGLE(0.21815299987793), + SCALE_SPLIT_ANGLE(0.21914559602737), + SCALE_SPLIT_ANGLE(0.22397418320179), + SCALE_SPLIT_ANGLE(0.27997341752052)}, + {SCALE_SPLIT_ANGLE(0.19442924857140), + SCALE_SPLIT_ANGLE(0.19449260830879), + SCALE_SPLIT_ANGLE(0.19459712505341), + SCALE_SPLIT_ANGLE(0.19491320848465), + SCALE_SPLIT_ANGLE(0.19532410800457), + SCALE_SPLIT_ANGLE(0.19634956121445), + SCALE_SPLIT_ANGLE(0.20156545937061), + SCALE_SPLIT_ANGLE(0.33650875091553)}, + {SCALE_SPLIT_ANGLE(0.17168679833412), + SCALE_SPLIT_ANGLE(0.17174908518791), + SCALE_SPLIT_ANGLE(0.17185173928738), + SCALE_SPLIT_ANGLE(0.17216140031815), + SCALE_SPLIT_ANGLE(0.17256212234497), + SCALE_SPLIT_ANGLE(0.17355351150036), + SCALE_SPLIT_ANGLE(0.17841057479382), + SCALE_SPLIT_ANGLE(0.23922468721867)}, + {SCALE_SPLIT_ANGLE(0.14965108036995), + SCALE_SPLIT_ANGLE(0.14971046149731), + SCALE_SPLIT_ANGLE(0.14980803430080), + SCALE_SPLIT_ANGLE(0.15010002255440), + SCALE_SPLIT_ANGLE(0.15047283470631), + SCALE_SPLIT_ANGLE(0.15137128531933), + SCALE_SPLIT_ANGLE(0.15533345937729), + SCALE_SPLIT_ANGLE(0.17691856622696)}, + {SCALE_SPLIT_ANGLE(0.12884500622749), + SCALE_SPLIT_ANGLE(0.12889973819256), + SCALE_SPLIT_ANGLE(0.12898921966553), + SCALE_SPLIT_ANGLE(0.12925371527672), + SCALE_SPLIT_ANGLE(0.12958450615406), + SCALE_SPLIT_ANGLE(0.13035117089748), + SCALE_SPLIT_ANGLE(0.13329000771046), + SCALE_SPLIT_ANGLE(0.14226883649826)}, + {SCALE_SPLIT_ANGLE(0.10966771841049), + SCALE_SPLIT_ANGLE(0.10971628874540), + SCALE_SPLIT_ANGLE(0.10979522019625), + SCALE_SPLIT_ANGLE(0.11002497375011), + SCALE_SPLIT_ANGLE(0.11030506342649), + SCALE_SPLIT_ANGLE(0.11092507839203), + SCALE_SPLIT_ANGLE(0.11297956109047), + SCALE_SPLIT_ANGLE(0.11718676239252)}, + {SCALE_SPLIT_ANGLE(0.09237616509199), + SCALE_SPLIT_ANGLE(0.09241759032011), + SCALE_SPLIT_ANGLE(0.09248441457748), + SCALE_SPLIT_ANGLE(0.09267570823431), + SCALE_SPLIT_ANGLE(0.09290253371000), + SCALE_SPLIT_ANGLE(0.09338124841452), + SCALE_SPLIT_ANGLE(0.09476862102747), + SCALE_SPLIT_ANGLE(0.09691140055656)}, + {SCALE_SPLIT_ANGLE(0.07020132243633), + SCALE_SPLIT_ANGLE(0.07023159414530), + SCALE_SPLIT_ANGLE(0.07027988880873), + SCALE_SPLIT_ANGLE(0.07041462510824), + SCALE_SPLIT_ANGLE(0.07056795060635), + SCALE_SPLIT_ANGLE(0.07087047398090), + SCALE_SPLIT_ANGLE(0.07161350548267), + SCALE_SPLIT_ANGLE(0.07247893512249)}, + {SCALE_SPLIT_ANGLE(0.05244029685855), + SCALE_SPLIT_ANGLE(0.05246063694358), + SCALE_SPLIT_ANGLE(0.05249277502298), + SCALE_SPLIT_ANGLE(0.05258031934500), + SCALE_SPLIT_ANGLE(0.05267634987831), + SCALE_SPLIT_ANGLE(0.05285539478064), + SCALE_SPLIT_ANGLE(0.05324416980147), + SCALE_SPLIT_ANGLE(0.05362326279283)}, + {SCALE_SPLIT_ANGLE(0.03864165768027), + SCALE_SPLIT_ANGLE(0.03865439072251), + SCALE_SPLIT_ANGLE(0.03867433592677), + SCALE_SPLIT_ANGLE(0.03872758522630), + SCALE_SPLIT_ANGLE(0.03878424316645), + SCALE_SPLIT_ANGLE(0.03888526186347), + SCALE_SPLIT_ANGLE(0.03908598423004), + SCALE_SPLIT_ANGLE(0.03926040604711)}, + {SCALE_SPLIT_ANGLE(0.02817477472126), + SCALE_SPLIT_ANGLE(0.02818230912089), + SCALE_SPLIT_ANGLE(0.02819401398301), + SCALE_SPLIT_ANGLE(0.02822477556765), + SCALE_SPLIT_ANGLE(0.02825673110783), + SCALE_SPLIT_ANGLE(0.02831180393696), + SCALE_SPLIT_ANGLE(0.02841453813016), + SCALE_SPLIT_ANGLE(0.02849725075066)}, + {SCALE_SPLIT_ANGLE(0.02037953026593), + SCALE_SPLIT_ANGLE(0.02038379199803), + SCALE_SPLIT_ANGLE(0.02039037831128), + SCALE_SPLIT_ANGLE(0.02040746994317), + SCALE_SPLIT_ANGLE(0.02042490243912), + SCALE_SPLIT_ANGLE(0.02045420184731), + SCALE_SPLIT_ANGLE(0.02050646767020), + SCALE_SPLIT_ANGLE(0.02054644003510)}, + {SCALE_SPLIT_ANGLE(0.01173160225153), + SCALE_SPLIT_ANGLE(0.01173313986510), + SCALE_SPLIT_ANGLE(0.01173550263047), + SCALE_SPLIT_ANGLE(0.01174154505134), + SCALE_SPLIT_ANGLE(0.01174758374691), + SCALE_SPLIT_ANGLE(0.01175745483488), + SCALE_SPLIT_ANGLE(0.01177425310016), + SCALE_SPLIT_ANGLE(0.01178644131869)}, + {SCALE_SPLIT_ANGLE(0.00668647512794), + SCALE_SPLIT_ANGLE(0.00668699946254), + SCALE_SPLIT_ANGLE(0.00668780272827), + SCALE_SPLIT_ANGLE(0.00668983906507), + SCALE_SPLIT_ANGLE(0.00669185025617), + SCALE_SPLIT_ANGLE(0.00669508520514), + SCALE_SPLIT_ANGLE(0.00670044543222), + SCALE_SPLIT_ANGLE(0.00670422753319)}, + {SCALE_SPLIT_ANGLE(0.00378898042254), + SCALE_SPLIT_ANGLE(0.00378915388137), + SCALE_SPLIT_ANGLE(0.00378941884264), + SCALE_SPLIT_ANGLE(0.00379008660093), + SCALE_SPLIT_ANGLE(0.00379074062221), + SCALE_SPLIT_ANGLE(0.00379178463481), + SCALE_SPLIT_ANGLE(0.00379348872229), + SCALE_SPLIT_ANGLE(0.00379467196763)}, + {SCALE_SPLIT_ANGLE(0.00213995971717), + SCALE_SPLIT_ANGLE(0.00214001606219), + SCALE_SPLIT_ANGLE(0.00214010174386), + SCALE_SPLIT_ANGLE(0.00214031711221), + SCALE_SPLIT_ANGLE(0.00214052735828), + SCALE_SPLIT_ANGLE(0.00214086147025), + SCALE_SPLIT_ANGLE(0.00214140163735), + SCALE_SPLIT_ANGLE(0.00214177416638)}, + {SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151)}, + }, + { + {SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850), + SCALE_SPLIT_ANGLE(0.78539812564850)}, + {SCALE_SPLIT_ANGLE(0.78143113851547), + SCALE_SPLIT_ANGLE(0.78143155574799), + SCALE_SPLIT_ANGLE(0.78143215179443), + SCALE_SPLIT_ANGLE(0.78143370151520), + SCALE_SPLIT_ANGLE(0.78143519163132), + SCALE_SPLIT_ANGLE(0.78143757581711), + SCALE_SPLIT_ANGLE(0.78144145011902), + SCALE_SPLIT_ANGLE(0.78144407272339)}, + {SCALE_SPLIT_ANGLE(0.77835679054260), + SCALE_SPLIT_ANGLE(0.77835804224014), + SCALE_SPLIT_ANGLE(0.77835988998413), + SCALE_SPLIT_ANGLE(0.77836471796036), + SCALE_SPLIT_ANGLE(0.77836942672729), + SCALE_SPLIT_ANGLE(0.77837687730789), + SCALE_SPLIT_ANGLE(0.77838897705078), + SCALE_SPLIT_ANGLE(0.77839738130569)}, + {SCALE_SPLIT_ANGLE(0.77291858196259), + SCALE_SPLIT_ANGLE(0.77292239665985), + SCALE_SPLIT_ANGLE(0.77292817831039), + SCALE_SPLIT_ANGLE(0.77294290065765), + SCALE_SPLIT_ANGLE(0.77295738458633), + SCALE_SPLIT_ANGLE(0.77298063039780), + SCALE_SPLIT_ANGLE(0.77301889657974), + SCALE_SPLIT_ANGLE(0.77304571866989)}, + {SCALE_SPLIT_ANGLE(0.76334190368652), + SCALE_SPLIT_ANGLE(0.76335322856903), + SCALE_SPLIT_ANGLE(0.76337057352066), + SCALE_SPLIT_ANGLE(0.76341474056244), + SCALE_SPLIT_ANGLE(0.76345866918564), + SCALE_SPLIT_ANGLE(0.76353001594543), + SCALE_SPLIT_ANGLE(0.76365023851395), + SCALE_SPLIT_ANGLE(0.76373648643494)}, + {SCALE_SPLIT_ANGLE(0.74662178754807), + SCALE_SPLIT_ANGLE(0.74665385484695), + SCALE_SPLIT_ANGLE(0.74670320749283), + SCALE_SPLIT_ANGLE(0.74683058261871), + SCALE_SPLIT_ANGLE(0.74695950746536), + SCALE_SPLIT_ANGLE(0.74717390537262), + SCALE_SPLIT_ANGLE(0.74754953384399), + SCALE_SPLIT_ANGLE(0.74783092737198)}, + {SCALE_SPLIT_ANGLE(0.73124057054520), + SCALE_SPLIT_ANGLE(0.73129826784134), + SCALE_SPLIT_ANGLE(0.73138761520386), + SCALE_SPLIT_ANGLE(0.73162078857422), + SCALE_SPLIT_ANGLE(0.73186045885086), + SCALE_SPLIT_ANGLE(0.73226773738861), + SCALE_SPLIT_ANGLE(0.73300832509995), + SCALE_SPLIT_ANGLE(0.73358738422394)}, + {SCALE_SPLIT_ANGLE(0.71016556024551), + SCALE_SPLIT_ANGLE(0.71026545763016), + SCALE_SPLIT_ANGLE(0.71042120456696), + SCALE_SPLIT_ANGLE(0.71083343029022), + SCALE_SPLIT_ANGLE(0.71126621961594), + SCALE_SPLIT_ANGLE(0.71202337741852), + SCALE_SPLIT_ANGLE(0.71347540616989), + SCALE_SPLIT_ANGLE(0.71468448638916)}, + {SCALE_SPLIT_ANGLE(0.68173062801361), + SCALE_SPLIT_ANGLE(0.68189471960068), + SCALE_SPLIT_ANGLE(0.68215268850327), + SCALE_SPLIT_ANGLE(0.68284785747528), + SCALE_SPLIT_ANGLE(0.68359774351120), + SCALE_SPLIT_ANGLE(0.68496215343475), + SCALE_SPLIT_ANGLE(0.68778359889984), + SCALE_SPLIT_ANGLE(0.69036644697189)}, + {SCALE_SPLIT_ANGLE(0.64424294233322), + SCALE_SPLIT_ANGLE(0.64449471235275), + SCALE_SPLIT_ANGLE(0.64489430189133), + SCALE_SPLIT_ANGLE(0.64599478244781), + SCALE_SPLIT_ANGLE(0.64722269773483), + SCALE_SPLIT_ANGLE(0.64957273006439), + SCALE_SPLIT_ANGLE(0.65497380495071), + SCALE_SPLIT_ANGLE(0.66069257259369)}, + {SCALE_SPLIT_ANGLE(0.59645885229111), + SCALE_SPLIT_ANGLE(0.59681373834610), + SCALE_SPLIT_ANGLE(0.59738290309906), + SCALE_SPLIT_ANGLE(0.59898978471756), + SCALE_SPLIT_ANGLE(0.60085380077362), + SCALE_SPLIT_ANGLE(0.60464859008789), + SCALE_SPLIT_ANGLE(0.61471658945084), + SCALE_SPLIT_ANGLE(0.62811440229416)}, + {SCALE_SPLIT_ANGLE(0.55878311395645), + SCALE_SPLIT_ANGLE(0.55920600891113), + SCALE_SPLIT_ANGLE(0.55988913774490), + SCALE_SPLIT_ANGLE(0.56185030937195), + SCALE_SPLIT_ANGLE(0.56418746709824), + SCALE_SPLIT_ANGLE(0.56916546821594), + SCALE_SPLIT_ANGLE(0.58402228355408), + SCALE_SPLIT_ANGLE(0.60877442359924)}, + {SCALE_SPLIT_ANGLE(0.51690864562988), + SCALE_SPLIT_ANGLE(0.51739054918289), + SCALE_SPLIT_ANGLE(0.51817405223846), + SCALE_SPLIT_ANGLE(0.52045875787735), + SCALE_SPLIT_ANGLE(0.52325224876404), + SCALE_SPLIT_ANGLE(0.52947413921356), + SCALE_SPLIT_ANGLE(0.55062562227249), + SCALE_SPLIT_ANGLE(0.59875661134720)}, + {SCALE_SPLIT_ANGLE(0.47171193361282), + SCALE_SPLIT_ANGLE(0.47223743796349), + SCALE_SPLIT_ANGLE(0.47309640049934), + SCALE_SPLIT_ANGLE(0.47563400864601), + SCALE_SPLIT_ANGLE(0.47880488634109), + SCALE_SPLIT_ANGLE(0.48615166544914), + SCALE_SPLIT_ANGLE(0.51456981897354), + SCALE_SPLIT_ANGLE(0.61478358507156)}, + {SCALE_SPLIT_ANGLE(0.42445337772369), + SCALE_SPLIT_ANGLE(0.42500329017639), + SCALE_SPLIT_ANGLE(0.42590543627739), + SCALE_SPLIT_ANGLE(0.42859473824501), + SCALE_SPLIT_ANGLE(0.43200695514679), + SCALE_SPLIT_ANGLE(0.44014197587967), + SCALE_SPLIT_ANGLE(0.47505444288254), + SCALE_SPLIT_ANGLE(0.70435541868210)}, + {SCALE_SPLIT_ANGLE(0.37662339210510), + SCALE_SPLIT_ANGLE(0.37717753648758), + SCALE_SPLIT_ANGLE(0.37808802723885), + SCALE_SPLIT_ANGLE(0.38081303238869), + SCALE_SPLIT_ANGLE(0.38429373502731), + SCALE_SPLIT_ANGLE(0.39269909262657), + SCALE_SPLIT_ANGLE(0.43061128258705), + SCALE_SPLIT_ANGLE(0.89949643611908)}, + {SCALE_SPLIT_ANGLE(0.32972764968872), + SCALE_SPLIT_ANGLE(0.33026659488678), + SCALE_SPLIT_ANGLE(0.33115157485008), + SCALE_SPLIT_ANGLE(0.33379590511322), + SCALE_SPLIT_ANGLE(0.33716440200806), + SCALE_SPLIT_ANGLE(0.34525617957115), + SCALE_SPLIT_ANGLE(0.38098797202110), + SCALE_SPLIT_ANGLE(0.66312330961227)}, + {SCALE_SPLIT_ANGLE(0.28508263826370), + SCALE_SPLIT_ANGLE(0.28558859229088), + SCALE_SPLIT_ANGLE(0.28641715645790), + SCALE_SPLIT_ANGLE(0.28887593746185), + SCALE_SPLIT_ANGLE(0.29197177290916), + SCALE_SPLIT_ANGLE(0.29924646019936), + SCALE_SPLIT_ANGLE(0.32879719138145), + SCALE_SPLIT_ANGLE(0.45467028021812)}, + {SCALE_SPLIT_ANGLE(0.24368345737457), + SCALE_SPLIT_ANGLE(0.24414120614529), + SCALE_SPLIT_ANGLE(0.24488738179207), + SCALE_SPLIT_ANGLE(0.24707712233067), + SCALE_SPLIT_ANGLE(0.24978286027908), + SCALE_SPLIT_ANGLE(0.25592401623726), + SCALE_SPLIT_ANGLE(0.27806487679482), + SCALE_SPLIT_ANGLE(0.33706206083298)}, + {SCALE_SPLIT_ANGLE(0.20616286993027), + SCALE_SPLIT_ANGLE(0.20656119287014), + SCALE_SPLIT_ANGLE(0.20720668137074), + SCALE_SPLIT_ANGLE(0.20907410979271), + SCALE_SPLIT_ANGLE(0.21132774651051), + SCALE_SPLIT_ANGLE(0.21623271703720), + SCALE_SPLIT_ANGLE(0.23177997767925), + SCALE_SPLIT_ANGLE(0.26115790009499)}, + {SCALE_SPLIT_ANGLE(0.17282110452652), + SCALE_SPLIT_ANGLE(0.17315416038036), + SCALE_SPLIT_ANGLE(0.17369024455547), + SCALE_SPLIT_ANGLE(0.17521673440933), + SCALE_SPLIT_ANGLE(0.17701178789139), + SCALE_SPLIT_ANGLE(0.18074953556061), + SCALE_SPLIT_ANGLE(0.19124270975590), + SCALE_SPLIT_ANGLE(0.20666223764420)}, + {SCALE_SPLIT_ANGLE(0.13066084682941), + SCALE_SPLIT_ANGLE(0.13089758157730), + SCALE_SPLIT_ANGLE(0.13127475976944), + SCALE_SPLIT_ANGLE(0.13232271373272), + SCALE_SPLIT_ANGLE(0.13350808620453), + SCALE_SPLIT_ANGLE(0.13582544028759), + SCALE_SPLIT_ANGLE(0.14140741527081), + SCALE_SPLIT_ANGLE(0.14774028956890)}, + {SCALE_SPLIT_ANGLE(0.09729286283255), + SCALE_SPLIT_ANGLE(0.09744835644960), + SCALE_SPLIT_ANGLE(0.09769364446402), + SCALE_SPLIT_ANGLE(0.09835994243622), + SCALE_SPLIT_ANGLE(0.09908767789602), + SCALE_SPLIT_ANGLE(0.10043603181839), + SCALE_SPLIT_ANGLE(0.10332850366831), + SCALE_SPLIT_ANGLE(0.10610697418451)}, + {SCALE_SPLIT_ANGLE(0.07155895978212), + SCALE_SPLIT_ANGLE(0.07165451347828), + SCALE_SPLIT_ANGLE(0.07180397957563), + SCALE_SPLIT_ANGLE(0.07220225036144), + SCALE_SPLIT_ANGLE(0.07262472063303), + SCALE_SPLIT_ANGLE(0.07337479293346), + SCALE_SPLIT_ANGLE(0.07485356926918), + SCALE_SPLIT_ANGLE(0.07612708956003)}, + {SCALE_SPLIT_ANGLE(0.05212157219648), + SCALE_SPLIT_ANGLE(0.05217727646232), + SCALE_SPLIT_ANGLE(0.05226379260421), + SCALE_SPLIT_ANGLE(0.05249078199267), + SCALE_SPLIT_ANGLE(0.05272606015205), + SCALE_SPLIT_ANGLE(0.05313042178750), + SCALE_SPLIT_ANGLE(0.05388085916638), + SCALE_SPLIT_ANGLE(0.05448162183166)}, + {SCALE_SPLIT_ANGLE(0.03767965734005), + SCALE_SPLIT_ANGLE(0.03771083429456), + SCALE_SPLIT_ANGLE(0.03775899112225), + SCALE_SPLIT_ANGLE(0.03788382932544), + SCALE_SPLIT_ANGLE(0.03801096230745), + SCALE_SPLIT_ANGLE(0.03822423517704), + SCALE_SPLIT_ANGLE(0.03860339149833), + SCALE_SPLIT_ANGLE(0.03889226913452)}, + {SCALE_SPLIT_ANGLE(0.02168158628047), + SCALE_SPLIT_ANGLE(0.02169270813465), + SCALE_SPLIT_ANGLE(0.02170977368951), + SCALE_SPLIT_ANGLE(0.02175341546535), + SCALE_SPLIT_ANGLE(0.02179697528481), + SCALE_SPLIT_ANGLE(0.02186812832952), + SCALE_SPLIT_ANGLE(0.02198898419738), + SCALE_SPLIT_ANGLE(0.02207652665675)}, + {SCALE_SPLIT_ANGLE(0.01235581003129), + SCALE_SPLIT_ANGLE(0.01235957816243), + SCALE_SPLIT_ANGLE(0.01236534118652), + SCALE_SPLIT_ANGLE(0.01237995270640), + SCALE_SPLIT_ANGLE(0.01239436585456), + SCALE_SPLIT_ANGLE(0.01241754554212), + SCALE_SPLIT_ANGLE(0.01245592255145), + SCALE_SPLIT_ANGLE(0.01248296815902)}, + {SCALE_SPLIT_ANGLE(0.00700127054006), + SCALE_SPLIT_ANGLE(0.00700251059607), + SCALE_SPLIT_ANGLE(0.00700440211222), + SCALE_SPLIT_ANGLE(0.00700917327777), + SCALE_SPLIT_ANGLE(0.00701385037974), + SCALE_SPLIT_ANGLE(0.00702130328864), + SCALE_SPLIT_ANGLE(0.00703346775845), + SCALE_SPLIT_ANGLE(0.00704190973192)}, + {SCALE_SPLIT_ANGLE(0.00395415630192), + SCALE_SPLIT_ANGLE(0.00395455770195), + SCALE_SPLIT_ANGLE(0.00395516818389), + SCALE_SPLIT_ANGLE(0.00395670533180), + SCALE_SPLIT_ANGLE(0.00395820522681), + SCALE_SPLIT_ANGLE(0.00396058429033), + SCALE_SPLIT_ANGLE(0.00396443530917), + SCALE_SPLIT_ANGLE(0.00396708538756)}, + {SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068)}, + }, + { + {SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.17809724807739)}, + {SCALE_SPLIT_ANGLE(1.17289519309998), + SCALE_SPLIT_ANGLE(1.17289638519287), + SCALE_SPLIT_ANGLE(1.17289805412292), + SCALE_SPLIT_ANGLE(1.17290234565735), + SCALE_SPLIT_ANGLE(1.17290651798248), + SCALE_SPLIT_ANGLE(1.17291307449341), + SCALE_SPLIT_ANGLE(1.17292368412018), + SCALE_SPLIT_ANGLE(1.17293095588684)}, + {SCALE_SPLIT_ANGLE(1.16883802413940), + SCALE_SPLIT_ANGLE(1.16884148120880), + SCALE_SPLIT_ANGLE(1.16884684562683), + SCALE_SPLIT_ANGLE(1.16886019706726), + SCALE_SPLIT_ANGLE(1.16887319087982), + SCALE_SPLIT_ANGLE(1.16889393329620), + SCALE_SPLIT_ANGLE(1.16892755031586), + SCALE_SPLIT_ANGLE(1.16895067691803)}, + {SCALE_SPLIT_ANGLE(1.16160655021667), + SCALE_SPLIT_ANGLE(1.16161727905273), + SCALE_SPLIT_ANGLE(1.16163372993469), + SCALE_SPLIT_ANGLE(1.16167509555817), + SCALE_SPLIT_ANGLE(1.16171574592590), + SCALE_SPLIT_ANGLE(1.16178059577942), + SCALE_SPLIT_ANGLE(1.16188669204712), + SCALE_SPLIT_ANGLE(1.16196048259735)}, + {SCALE_SPLIT_ANGLE(1.14870405197144), + SCALE_SPLIT_ANGLE(1.14873659610748), + SCALE_SPLIT_ANGLE(1.14878630638123), + SCALE_SPLIT_ANGLE(1.14891266822815), + SCALE_SPLIT_ANGLE(1.14903748035431), + SCALE_SPLIT_ANGLE(1.14923894405365), + SCALE_SPLIT_ANGLE(1.14957404136658), + SCALE_SPLIT_ANGLE(1.14981138706207)}, + {SCALE_SPLIT_ANGLE(1.12567496299744), + SCALE_SPLIT_ANGLE(1.12576997280121), + SCALE_SPLIT_ANGLE(1.12591612339020), + SCALE_SPLIT_ANGLE(1.12629067897797), + SCALE_SPLIT_ANGLE(1.12666594982147), + SCALE_SPLIT_ANGLE(1.12728190422058), + SCALE_SPLIT_ANGLE(1.12833762168884), + SCALE_SPLIT_ANGLE(1.12910997867584)}, + {SCALE_SPLIT_ANGLE(1.10394382476807), + SCALE_SPLIT_ANGLE(1.10412001609802), + SCALE_SPLIT_ANGLE(1.10439181327820), + SCALE_SPLIT_ANGLE(1.10509443283081), + SCALE_SPLIT_ANGLE(1.10580694675446), + SCALE_SPLIT_ANGLE(1.10699594020844), + SCALE_SPLIT_ANGLE(1.10909199714661), + SCALE_SPLIT_ANGLE(1.11067581176758)}, + {SCALE_SPLIT_ANGLE(1.07335853576660), + SCALE_SPLIT_ANGLE(1.07367515563965), + SCALE_SPLIT_ANGLE(1.07416594028473), + SCALE_SPLIT_ANGLE(1.07544887065887), + SCALE_SPLIT_ANGLE(1.07677161693573), + SCALE_SPLIT_ANGLE(1.07902932167053), + SCALE_SPLIT_ANGLE(1.08317446708679), + SCALE_SPLIT_ANGLE(1.08645892143250)}, + {SCALE_SPLIT_ANGLE(1.03070926666260), + SCALE_SPLIT_ANGLE(1.03125381469727), + SCALE_SPLIT_ANGLE(1.03210365772247), + SCALE_SPLIT_ANGLE(1.03435742855072), + SCALE_SPLIT_ANGLE(1.03673219680786), + SCALE_SPLIT_ANGLE(1.04091238975525), + SCALE_SPLIT_ANGLE(1.04904520511627), + SCALE_SPLIT_ANGLE(1.05597066879272)}, + {SCALE_SPLIT_ANGLE(0.97233027219772), + SCALE_SPLIT_ANGLE(0.97321176528931), + SCALE_SPLIT_ANGLE(0.97459858655930), + SCALE_SPLIT_ANGLE(0.97834444046021), + SCALE_SPLIT_ANGLE(0.98240250349045), + SCALE_SPLIT_ANGLE(0.98984360694885), + SCALE_SPLIT_ANGLE(1.00556409358978), + SCALE_SPLIT_ANGLE(1.02053046226501)}, + {SCALE_SPLIT_ANGLE(0.89506644010544), + SCALE_SPLIT_ANGLE(0.89638090133667), + SCALE_SPLIT_ANGLE(0.89846849441528), + SCALE_SPLIT_ANGLE(0.90423041582108), + SCALE_SPLIT_ANGLE(0.91068577766418), + SCALE_SPLIT_ANGLE(0.92315071821213), + SCALE_SPLIT_ANGLE(0.95268243551254), + SCALE_SPLIT_ANGLE(0.98626506328583)}, + {SCALE_SPLIT_ANGLE(0.83257329463959), + SCALE_SPLIT_ANGLE(0.83419400453568), + SCALE_SPLIT_ANGLE(0.83678525686264), + SCALE_SPLIT_ANGLE(0.84404885768890), + SCALE_SPLIT_ANGLE(0.85238879919052), + SCALE_SPLIT_ANGLE(0.86914122104645), + SCALE_SPLIT_ANGLE(0.91285765171051), + SCALE_SPLIT_ANGLE(0.97222852706909)}, + {SCALE_SPLIT_ANGLE(0.76227337121964), + SCALE_SPLIT_ANGLE(0.76417022943497), + SCALE_SPLIT_ANGLE(0.76722234487534), + SCALE_SPLIT_ANGLE(0.77590966224670), + SCALE_SPLIT_ANGLE(0.78613227605820), + SCALE_SPLIT_ANGLE(0.80752640962601), + SCALE_SPLIT_ANGLE(0.86987829208374), + SCALE_SPLIT_ANGLE(0.97863066196442)}, + {SCALE_SPLIT_ANGLE(0.68631619215012), + SCALE_SPLIT_ANGLE(0.68841683864594), + SCALE_SPLIT_ANGLE(0.69181632995605), + SCALE_SPLIT_ANGLE(0.70162522792816), + SCALE_SPLIT_ANGLE(0.71342813968658), + SCALE_SPLIT_ANGLE(0.73910331726074), + SCALE_SPLIT_ANGLE(0.82307606935501), + SCALE_SPLIT_ANGLE(1.03223013877869)}, + {SCALE_SPLIT_ANGLE(0.60781323909760), + SCALE_SPLIT_ANGLE(0.61001545190811), + SCALE_SPLIT_ANGLE(0.61359488964081), + SCALE_SPLIT_ANGLE(0.62403196096420), + SCALE_SPLIT_ANGLE(0.63681113719940), + SCALE_SPLIT_ANGLE(0.66548818349838), + SCALE_SPLIT_ANGLE(0.76931142807007), + SCALE_SPLIT_ANGLE(1.19638144969940)}, + {SCALE_SPLIT_ANGLE(0.53021633625031), + SCALE_SPLIT_ANGLE(0.53240889310837), + SCALE_SPLIT_ANGLE(0.53598147630692), + SCALE_SPLIT_ANGLE(0.54646170139313), + SCALE_SPLIT_ANGLE(0.55942362546921), + SCALE_SPLIT_ANGLE(0.58904862403870), + SCALE_SPLIT_ANGLE(0.70326197147369), + SCALE_SPLIT_ANGLE(1.46822571754456)}, + {SCALE_SPLIT_ANGLE(0.45655798912048), + SCALE_SPLIT_ANGLE(0.45864027738571), + SCALE_SPLIT_ANGLE(0.46203431487083), + SCALE_SPLIT_ANGLE(0.47199890017509), + SCALE_SPLIT_ANGLE(0.48433950543404), + SCALE_SPLIT_ANGLE(0.51260900497437), + SCALE_SPLIT_ANGLE(0.62212866544724), + SCALE_SPLIT_ANGLE(1.20720028877258)}, + {SCALE_SPLIT_ANGLE(0.38893291354179), + SCALE_SPLIT_ANGLE(0.39082619547844), + SCALE_SPLIT_ANGLE(0.39390671253204), + SCALE_SPLIT_ANGLE(0.40291145443916), + SCALE_SPLIT_ANGLE(0.41398161649704), + SCALE_SPLIT_ANGLE(0.43899387121201), + SCALE_SPLIT_ANGLE(0.53091615438461), + SCALE_SPLIT_ANGLE(0.85221332311630)}, + {SCALE_SPLIT_ANGLE(0.32840186357498), + SCALE_SPLIT_ANGLE(0.33005380630493), + SCALE_SPLIT_ANGLE(0.33273181319237), + SCALE_SPLIT_ANGLE(0.34049156308174), + SCALE_SPLIT_ANGLE(0.34989202022552), + SCALE_SPLIT_ANGLE(0.37057083845139), + SCALE_SPLIT_ANGLE(0.43990376591682), + SCALE_SPLIT_ANGLE(0.60593068599701)}, + {SCALE_SPLIT_ANGLE(0.27521029114723), + SCALE_SPLIT_ANGLE(0.27659532427788), + SCALE_SPLIT_ANGLE(0.27882957458496), + SCALE_SPLIT_ANGLE(0.28522574901581), + SCALE_SPLIT_ANGLE(0.29282194375992), + SCALE_SPLIT_ANGLE(0.30895602703094), + SCALE_SPLIT_ANGLE(0.35752716660500), + SCALE_SPLIT_ANGLE(0.44366976618767)}, + {SCALE_SPLIT_ANGLE(0.22909799218178), + SCALE_SPLIT_ANGLE(0.23021572828293), + SCALE_SPLIT_ANGLE(0.23200811445713), + SCALE_SPLIT_ANGLE(0.23706816136837), + SCALE_SPLIT_ANGLE(0.24294251203537), + SCALE_SPLIT_ANGLE(0.25494652986526), + SCALE_SPLIT_ANGLE(0.28743273019791), + SCALE_SPLIT_ANGLE(0.33326253294945)}, + {SCALE_SPLIT_ANGLE(0.17204397916794), + SCALE_SPLIT_ANGLE(0.17280195653439), + SCALE_SPLIT_ANGLE(0.17400608956814), + SCALE_SPLIT_ANGLE(0.17733128368855), + SCALE_SPLIT_ANGLE(0.18105845153332), + SCALE_SPLIT_ANGLE(0.18825364112854), + SCALE_SPLIT_ANGLE(0.20519739389420), + SCALE_SPLIT_ANGLE(0.22397252917290)}, + {SCALE_SPLIT_ANGLE(0.12763081490994), + SCALE_SPLIT_ANGLE(0.12810991704464), + SCALE_SPLIT_ANGLE(0.12886413931847), + SCALE_SPLIT_ANGLE(0.13090407848358), + SCALE_SPLIT_ANGLE(0.13311788439751), + SCALE_SPLIT_ANGLE(0.13718488812447), + SCALE_SPLIT_ANGLE(0.14578336477280), + SCALE_SPLIT_ANGLE(0.15392093360424)}, + {SCALE_SPLIT_ANGLE(0.09368771314621), + SCALE_SPLIT_ANGLE(0.09397350251675), + SCALE_SPLIT_ANGLE(0.09441984444857), + SCALE_SPLIT_ANGLE(0.09560553729534), + SCALE_SPLIT_ANGLE(0.09685769677162), + SCALE_SPLIT_ANGLE(0.09906788915396), + SCALE_SPLIT_ANGLE(0.10338338464499), + SCALE_SPLIT_ANGLE(0.10706327855587)}, + {SCALE_SPLIT_ANGLE(0.06817039847374), + SCALE_SPLIT_ANGLE(0.06833326816559), + SCALE_SPLIT_ANGLE(0.06858598440886), + SCALE_SPLIT_ANGLE(0.06924756616354), + SCALE_SPLIT_ANGLE(0.06993119418621), + SCALE_SPLIT_ANGLE(0.07110133767128), + SCALE_SPLIT_ANGLE(0.07325870543718), + SCALE_SPLIT_ANGLE(0.07497421652079)}, + {SCALE_SPLIT_ANGLE(0.04925633221865), + SCALE_SPLIT_ANGLE(0.04934597760439), + SCALE_SPLIT_ANGLE(0.04948436096311), + SCALE_SPLIT_ANGLE(0.04984252527356), + SCALE_SPLIT_ANGLE(0.05020647495985), + SCALE_SPLIT_ANGLE(0.05081529542804), + SCALE_SPLIT_ANGLE(0.05189275369048), + SCALE_SPLIT_ANGLE(0.05270983651280)}, + {SCALE_SPLIT_ANGLE(0.02833298407495), + SCALE_SPLIT_ANGLE(0.02836437709630), + SCALE_SPLIT_ANGLE(0.02841254509985), + SCALE_SPLIT_ANGLE(0.02853557839990), + SCALE_SPLIT_ANGLE(0.02865825034678), + SCALE_SPLIT_ANGLE(0.02885829657316), + SCALE_SPLIT_ANGLE(0.02919724024832), + SCALE_SPLIT_ANGLE(0.02944211289287)}, + {SCALE_SPLIT_ANGLE(0.01614447496831), + SCALE_SPLIT_ANGLE(0.01615499891341), + SCALE_SPLIT_ANGLE(0.01617109030485), + SCALE_SPLIT_ANGLE(0.01621186546981), + SCALE_SPLIT_ANGLE(0.01625206694007), + SCALE_SPLIT_ANGLE(0.01631666347384), + SCALE_SPLIT_ANGLE(0.01642346009612), + SCALE_SPLIT_ANGLE(0.01649860665202)}, + {SCALE_SPLIT_ANGLE(0.00914775021374), + SCALE_SPLIT_ANGLE(0.00915119145066), + SCALE_SPLIT_ANGLE(0.00915644038469), + SCALE_SPLIT_ANGLE(0.00916968286037), + SCALE_SPLIT_ANGLE(0.00918265152723), + SCALE_SPLIT_ANGLE(0.00920331478119), + SCALE_SPLIT_ANGLE(0.00923701003194), + SCALE_SPLIT_ANGLE(0.00926037877798)}, + {SCALE_SPLIT_ANGLE(0.00516638066620), + SCALE_SPLIT_ANGLE(0.00516748987138), + SCALE_SPLIT_ANGLE(0.00516917929053), + SCALE_SPLIT_ANGLE(0.00517342984676), + SCALE_SPLIT_ANGLE(0.00517757656053), + SCALE_SPLIT_ANGLE(0.00518415356055), + SCALE_SPLIT_ANGLE(0.00519479578361), + SCALE_SPLIT_ANGLE(0.00520211551338)}, + {SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564)}, + }, + { + {SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629), + SCALE_SPLIT_ANGLE(1.57079637050629)}, + {SCALE_SPLIT_ANGLE(1.56514155864716), + SCALE_SPLIT_ANGLE(1.56514346599579), + SCALE_SPLIT_ANGLE(1.56514656543732), + SCALE_SPLIT_ANGLE(1.56515407562256), + SCALE_SPLIT_ANGLE(1.56516146659851), + SCALE_SPLIT_ANGLE(1.56517302989960), + SCALE_SPLIT_ANGLE(1.56519174575806), + SCALE_SPLIT_ANGLE(1.56520450115204)}, + {SCALE_SPLIT_ANGLE(1.56069743633270), + SCALE_SPLIT_ANGLE(1.56070363521576), + SCALE_SPLIT_ANGLE(1.56071317195892), + SCALE_SPLIT_ANGLE(1.56073689460754), + SCALE_SPLIT_ANGLE(1.56076002120972), + SCALE_SPLIT_ANGLE(1.56079673767090), + SCALE_SPLIT_ANGLE(1.56085586547852), + SCALE_SPLIT_ANGLE(1.56089639663696)}, + {SCALE_SPLIT_ANGLE(1.55270349979401), + SCALE_SPLIT_ANGLE(1.55272293090820), + SCALE_SPLIT_ANGLE(1.55275249481201), + SCALE_SPLIT_ANGLE(1.55282700061798), + SCALE_SPLIT_ANGLE(1.55289983749390), + SCALE_SPLIT_ANGLE(1.55301547050476), + SCALE_SPLIT_ANGLE(1.55320310592651), + SCALE_SPLIT_ANGLE(1.55333256721497)}, + {SCALE_SPLIT_ANGLE(1.53820896148682), + SCALE_SPLIT_ANGLE(1.53826904296875), + SCALE_SPLIT_ANGLE(1.53836083412170), + SCALE_SPLIT_ANGLE(1.53859281539917), + SCALE_SPLIT_ANGLE(1.53882038593292), + SCALE_SPLIT_ANGLE(1.53918409347534), + SCALE_SPLIT_ANGLE(1.53978037834167), + SCALE_SPLIT_ANGLE(1.54019629955292)}, + {SCALE_SPLIT_ANGLE(1.51160359382629), + SCALE_SPLIT_ANGLE(1.51178681850433), + SCALE_SPLIT_ANGLE(1.51206707954407), + SCALE_SPLIT_ANGLE(1.51277923583984), + SCALE_SPLIT_ANGLE(1.51348364353180), + SCALE_SPLIT_ANGLE(1.51462137699127), + SCALE_SPLIT_ANGLE(1.51652014255524), + SCALE_SPLIT_ANGLE(1.51787149906158)}, + {SCALE_SPLIT_ANGLE(1.48564028739929), + SCALE_SPLIT_ANGLE(1.48599278926849), + SCALE_SPLIT_ANGLE(1.48653328418732), + SCALE_SPLIT_ANGLE(1.48791313171387), + SCALE_SPLIT_ANGLE(1.48928797245026), + SCALE_SPLIT_ANGLE(1.49152994155884), + SCALE_SPLIT_ANGLE(1.49533641338348), + SCALE_SPLIT_ANGLE(1.49810016155243)}, + {SCALE_SPLIT_ANGLE(1.44770443439484), + SCALE_SPLIT_ANGLE(1.44837117195129), + SCALE_SPLIT_ANGLE(1.44939684867859), + SCALE_SPLIT_ANGLE(1.45203149318695), + SCALE_SPLIT_ANGLE(1.45468175411224), + SCALE_SPLIT_ANGLE(1.45906186103821), + SCALE_SPLIT_ANGLE(1.46668362617493), + SCALE_SPLIT_ANGLE(1.47238755226135)}, + {SCALE_SPLIT_ANGLE(1.39214622974396), + SCALE_SPLIT_ANGLE(1.39337480068207), + SCALE_SPLIT_ANGLE(1.39527153968811), + SCALE_SPLIT_ANGLE(1.40018463134766), + SCALE_SPLIT_ANGLE(1.40518975257874), + SCALE_SPLIT_ANGLE(1.41361439228058), + SCALE_SPLIT_ANGLE(1.42880713939667), + SCALE_SPLIT_ANGLE(1.44072246551514)}, + {SCALE_SPLIT_ANGLE(1.31133699417114), + SCALE_SPLIT_ANGLE(1.31350564956665), + SCALE_SPLIT_ANGLE(1.31686961650848), + SCALE_SPLIT_ANGLE(1.32567906379700), + SCALE_SPLIT_ANGLE(1.33480501174927), + SCALE_SPLIT_ANGLE(1.35055577754974), + SCALE_SPLIT_ANGLE(1.38048458099365), + SCALE_SPLIT_ANGLE(1.40579915046692)}, + {SCALE_SPLIT_ANGLE(1.19695901870728), + SCALE_SPLIT_ANGLE(1.20052528381348), + SCALE_SPLIT_ANGLE(1.20609176158905), + SCALE_SPLIT_ANGLE(1.22087836265564), + SCALE_SPLIT_ANGLE(1.23654139041901), + SCALE_SPLIT_ANGLE(1.26451897621155), + SCALE_SPLIT_ANGLE(1.32194638252258), + SCALE_SPLIT_ANGLE(1.37709856033325)}, + {SCALE_SPLIT_ANGLE(1.09969496726990), + SCALE_SPLIT_ANGLE(1.10437381267548), + SCALE_SPLIT_ANGLE(1.11171460151672), + SCALE_SPLIT_ANGLE(1.13144767284393), + SCALE_SPLIT_ANGLE(1.15274536609650), + SCALE_SPLIT_ANGLE(1.19192278385162), + SCALE_SPLIT_ANGLE(1.27820122241974), + SCALE_SPLIT_ANGLE(1.37287366390228)}, + {SCALE_SPLIT_ANGLE(0.98739641904831), + SCALE_SPLIT_ANGLE(0.99314504861832), + SCALE_SPLIT_ANGLE(1.00221848487854), + SCALE_SPLIT_ANGLE(1.02694928646088), + SCALE_SPLIT_ANGLE(1.05423069000244), + SCALE_SPLIT_ANGLE(1.10619938373566), + SCALE_SPLIT_ANGLE(1.23116791248322), + SCALE_SPLIT_ANGLE(1.39771795272827)}, + {SCALE_SPLIT_ANGLE(0.86566168069839), + SCALE_SPLIT_ANGLE(0.87219274044037), + SCALE_SPLIT_ANGLE(0.88256764411926), + SCALE_SPLIT_ANGLE(0.91127204895020), + SCALE_SPLIT_ANGLE(0.94370108842850), + SCALE_SPLIT_ANGLE(1.00792455673218), + SCALE_SPLIT_ANGLE(1.17914211750031), + SCALE_SPLIT_ANGLE(1.48121190071106)}, + {SCALE_SPLIT_ANGLE(0.74293035268784), + SCALE_SPLIT_ANGLE(0.74975663423538), + SCALE_SPLIT_ANGLE(0.76066619157791), + SCALE_SPLIT_ANGLE(0.79128372669220), + SCALE_SPLIT_ANGLE(0.82667875289917), + SCALE_SPLIT_ANGLE(0.89952337741852), + SCALE_SPLIT_ANGLE(1.11571300029755), + SCALE_SPLIT_ANGLE(1.67431199550629)}, + {SCALE_SPLIT_ANGLE(0.62761706113815), + SCALE_SPLIT_ANGLE(0.63421267271042), + SCALE_SPLIT_ANGLE(0.64480352401733), + SCALE_SPLIT_ANGLE(0.67486244440079), + SCALE_SPLIT_ANGLE(0.71025311946869), + SCALE_SPLIT_ANGLE(0.78539818525314), + SCALE_SPLIT_ANGLE(1.02937340736389), + SCALE_SPLIT_ANGLE(1.92301487922668)}, + {SCALE_SPLIT_ANGLE(0.52522456645966), + SCALE_SPLIT_ANGLE(0.53118568658829), + SCALE_SPLIT_ANGLE(0.54078328609467), + SCALE_SPLIT_ANGLE(0.56819748878479), + SCALE_SPLIT_ANGLE(0.60080903768539), + SCALE_SPLIT_ANGLE(0.67127299308777), + SCALE_SPLIT_ANGLE(0.91114157438278), + SCALE_SPLIT_ANGLE(1.73398244380951)}, + {SCALE_SPLIT_ANGLE(0.43751955032349), + SCALE_SPLIT_ANGLE(0.44262495636940), + SCALE_SPLIT_ANGLE(0.45084837079048), + SCALE_SPLIT_ANGLE(0.47435709834099), + SCALE_SPLIT_ANGLE(0.50235128402710), + SCALE_SPLIT_ANGLE(0.56287181377411), + SCALE_SPLIT_ANGLE(0.76705121994019), + SCALE_SPLIT_ANGLE(1.34888231754303)}, + {SCALE_SPLIT_ANGLE(0.36364197731018), + SCALE_SPLIT_ANGLE(0.36782836914063), + SCALE_SPLIT_ANGLE(0.37456014752388), + SCALE_SPLIT_ANGLE(0.39372295141220), + SCALE_SPLIT_ANGLE(0.41636970639229), + SCALE_SPLIT_ANGLE(0.46459695696831), + SCALE_SPLIT_ANGLE(0.61803084611893), + SCALE_SPLIT_ANGLE(0.96275907754898)}, + {SCALE_SPLIT_ANGLE(0.30166232585907), + SCALE_SPLIT_ANGLE(0.30497136712074), + SCALE_SPLIT_ANGLE(0.31027451157570), + SCALE_SPLIT_ANGLE(0.32524627447128), + SCALE_SPLIT_ANGLE(0.34269109368324), + SCALE_SPLIT_ANGLE(0.37887358665466), + SCALE_SPLIT_ANGLE(0.48432540893555), + SCALE_SPLIT_ANGLE(0.66878592967987)}, + {SCALE_SPLIT_ANGLE(0.24960109591484), + SCALE_SPLIT_ANGLE(0.25213342905045), + SCALE_SPLIT_ANGLE(0.25617361068726), + SCALE_SPLIT_ANGLE(0.26745575666428), + SCALE_SPLIT_ANGLE(0.28036275506020), + SCALE_SPLIT_ANGLE(0.30627736449242), + SCALE_SPLIT_ANGLE(0.37490701675415), + SCALE_SPLIT_ANGLE(0.47145301103592)}, + {SCALE_SPLIT_ANGLE(0.18661488592625), + SCALE_SPLIT_ANGLE(0.18822197616100), + SCALE_SPLIT_ANGLE(0.19076596200466), + SCALE_SPLIT_ANGLE(0.19773863255978), + SCALE_SPLIT_ANGLE(0.20547652244568), + SCALE_SPLIT_ANGLE(0.22024063766003), + SCALE_SPLIT_ANGLE(0.25452125072479), + SCALE_SPLIT_ANGLE(0.29236793518066)}, + {SCALE_SPLIT_ANGLE(0.13821771740913), + SCALE_SPLIT_ANGLE(0.13918289542198), + SCALE_SPLIT_ANGLE(0.14069861173630), + SCALE_SPLIT_ANGLE(0.14477686583996), + SCALE_SPLIT_ANGLE(0.14917233586311), + SCALE_SPLIT_ANGLE(0.15718193352222), + SCALE_SPLIT_ANGLE(0.17394064366817), + SCALE_SPLIT_ANGLE(0.18971265852451)}, + {SCALE_SPLIT_ANGLE(0.10140904784203), + SCALE_SPLIT_ANGLE(0.10196315497160), + SCALE_SPLIT_ANGLE(0.10282710194588), + SCALE_SPLIT_ANGLE(0.10511382669210), + SCALE_SPLIT_ANGLE(0.10751703381538), + SCALE_SPLIT_ANGLE(0.11173453181982), + SCALE_SPLIT_ANGLE(0.11990433931351), + SCALE_SPLIT_ANGLE(0.12683042883873)}, + {SCALE_SPLIT_ANGLE(0.07378087192774), + SCALE_SPLIT_ANGLE(0.07408788800240), + SCALE_SPLIT_ANGLE(0.07456368207932), + SCALE_SPLIT_ANGLE(0.07580613344908), + SCALE_SPLIT_ANGLE(0.07708553224802), + SCALE_SPLIT_ANGLE(0.07926639169455), + SCALE_SPLIT_ANGLE(0.08326309919357), + SCALE_SPLIT_ANGLE(0.08642497658730)}, + {SCALE_SPLIT_ANGLE(0.05331044271588), + SCALE_SPLIT_ANGLE(0.05347600579262), + SCALE_SPLIT_ANGLE(0.05373133346438), + SCALE_SPLIT_ANGLE(0.05439101532102), + SCALE_SPLIT_ANGLE(0.05505970120430), + SCALE_SPLIT_ANGLE(0.05617496743798), + SCALE_SPLIT_ANGLE(0.05813983827829), + SCALE_SPLIT_ANGLE(0.05962376296520)}, + {SCALE_SPLIT_ANGLE(0.03066622652113), + SCALE_SPLIT_ANGLE(0.03072291985154), + SCALE_SPLIT_ANGLE(0.03080986253917), + SCALE_SPLIT_ANGLE(0.03103173524141), + SCALE_SPLIT_ANGLE(0.03125262632966), + SCALE_SPLIT_ANGLE(0.03161224350333), + SCALE_SPLIT_ANGLE(0.03221991285682), + SCALE_SPLIT_ANGLE(0.03265778720379)}, + {SCALE_SPLIT_ANGLE(0.01747439615428), + SCALE_SPLIT_ANGLE(0.01749316416681), + SCALE_SPLIT_ANGLE(0.01752184517682), + SCALE_SPLIT_ANGLE(0.01759449020028), + SCALE_SPLIT_ANGLE(0.01766604930162), + SCALE_SPLIT_ANGLE(0.01778092049062), + SCALE_SPLIT_ANGLE(0.01797054335475), + SCALE_SPLIT_ANGLE(0.01810375973582)}, + {SCALE_SPLIT_ANGLE(0.00990140344948), + SCALE_SPLIT_ANGLE(0.00990749336779), + SCALE_SPLIT_ANGLE(0.00991678331047), + SCALE_SPLIT_ANGLE(0.00994021166116), + SCALE_SPLIT_ANGLE(0.00996314454824), + SCALE_SPLIT_ANGLE(0.00999966636300), + SCALE_SPLIT_ANGLE(0.01005917042494), + SCALE_SPLIT_ANGLE(0.01010039448738)}, + {SCALE_SPLIT_ANGLE(0.00559204118326), + SCALE_SPLIT_ANGLE(0.00559399509802), + SCALE_SPLIT_ANGLE(0.00559697346762), + SCALE_SPLIT_ANGLE(0.00560446362942), + SCALE_SPLIT_ANGLE(0.00561177125201), + SCALE_SPLIT_ANGLE(0.00562335411087), + SCALE_SPLIT_ANGLE(0.00564208766446), + SCALE_SPLIT_ANGLE(0.00565496599302)}, + {SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278), + SCALE_SPLIT_ANGLE(0.00000003162278)}, + }, + { + {SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589), + SCALE_SPLIT_ANGLE(1.96349537372589)}, + {SCALE_SPLIT_ANGLE(1.95824837684631), + SCALE_SPLIT_ANGLE(1.95825088024139), + SCALE_SPLIT_ANGLE(1.95825481414795), + SCALE_SPLIT_ANGLE(1.95826447010040), + SCALE_SPLIT_ANGLE(1.95827388763428), + SCALE_SPLIT_ANGLE(1.95828890800476), + SCALE_SPLIT_ANGLE(1.95831274986267), + SCALE_SPLIT_ANGLE(1.95832908153534)}, + {SCALE_SPLIT_ANGLE(1.95409297943115), + SCALE_SPLIT_ANGLE(1.95410108566284), + SCALE_SPLIT_ANGLE(1.95411336421967), + SCALE_SPLIT_ANGLE(1.95414412021637), + SCALE_SPLIT_ANGLE(1.95417404174805), + SCALE_SPLIT_ANGLE(1.95422136783600), + SCALE_SPLIT_ANGLE(1.95429730415344), + SCALE_SPLIT_ANGLE(1.95434916019440)}, + {SCALE_SPLIT_ANGLE(1.94654774665833), + SCALE_SPLIT_ANGLE(1.94657325744629), + SCALE_SPLIT_ANGLE(1.94661211967468), + SCALE_SPLIT_ANGLE(1.94670987129211), + SCALE_SPLIT_ANGLE(1.94680488109589), + SCALE_SPLIT_ANGLE(1.94695508480072), + SCALE_SPLIT_ANGLE(1.94719684123993), + SCALE_SPLIT_ANGLE(1.94736230373383)}, + {SCALE_SPLIT_ANGLE(1.93263375759125), + SCALE_SPLIT_ANGLE(1.93271493911743), + SCALE_SPLIT_ANGLE(1.93283843994141), + SCALE_SPLIT_ANGLE(1.93314898014069), + SCALE_SPLIT_ANGLE(1.93345153331757), + SCALE_SPLIT_ANGLE(1.93393051624298), + SCALE_SPLIT_ANGLE(1.93470382690430), + SCALE_SPLIT_ANGLE(1.93523514270782)}, + {SCALE_SPLIT_ANGLE(1.90630435943604), + SCALE_SPLIT_ANGLE(1.90656292438507), + SCALE_SPLIT_ANGLE(1.90695691108704), + SCALE_SPLIT_ANGLE(1.90794765949249), + SCALE_SPLIT_ANGLE(1.90891444683075), + SCALE_SPLIT_ANGLE(1.91044902801514), + SCALE_SPLIT_ANGLE(1.91294109821320), + SCALE_SPLIT_ANGLE(1.91466653347015)}, + {SCALE_SPLIT_ANGLE(1.87960743904114), + SCALE_SPLIT_ANGLE(1.88012742996216), + SCALE_SPLIT_ANGLE(1.88091933727264), + SCALE_SPLIT_ANGLE(1.88291192054749), + SCALE_SPLIT_ANGLE(1.88485777378082), + SCALE_SPLIT_ANGLE(1.88795232772827), + SCALE_SPLIT_ANGLE(1.89300394058228), + SCALE_SPLIT_ANGLE(1.89652991294861)}, + {SCALE_SPLIT_ANGLE(1.83877396583557), + SCALE_SPLIT_ANGLE(1.83982229232788), + SCALE_SPLIT_ANGLE(1.84141862392426), + SCALE_SPLIT_ANGLE(1.84543347358704), + SCALE_SPLIT_ANGLE(1.84935534000397), + SCALE_SPLIT_ANGLE(1.85560429096222), + SCALE_SPLIT_ANGLE(1.86587727069855), + SCALE_SPLIT_ANGLE(1.87314081192017)}, + {SCALE_SPLIT_ANGLE(1.77493417263031), + SCALE_SPLIT_ANGLE(1.77705264091492), + SCALE_SPLIT_ANGLE(1.78027474880219), + SCALE_SPLIT_ANGLE(1.78836548328400), + SCALE_SPLIT_ANGLE(1.79626095294952), + SCALE_SPLIT_ANGLE(1.80886054039001), + SCALE_SPLIT_ANGLE(1.82978034019470), + SCALE_SPLIT_ANGLE(1.84489548206329)}, + {SCALE_SPLIT_ANGLE(1.67321813106537), + SCALE_SPLIT_ANGLE(1.67747652530670), + SCALE_SPLIT_ANGLE(1.68394017219543), + SCALE_SPLIT_ANGLE(1.70011746883392), + SCALE_SPLIT_ANGLE(1.71586501598358), + SCALE_SPLIT_ANGLE(1.74102878570557), + SCALE_SPLIT_ANGLE(1.78345441818237), + SCALE_SPLIT_ANGLE(1.81531298160553)}, + {SCALE_SPLIT_ANGLE(1.51132118701935), + SCALE_SPLIT_ANGLE(1.51959395408630), + SCALE_SPLIT_ANGLE(1.53212559223175), + SCALE_SPLIT_ANGLE(1.56339788436890), + SCALE_SPLIT_ANGLE(1.59380054473877), + SCALE_SPLIT_ANGLE(1.64260375499725), + SCALE_SPLIT_ANGLE(1.72719120979309), + SCALE_SPLIT_ANGLE(1.79549276828766)}, + {SCALE_SPLIT_ANGLE(1.35904061794281), + SCALE_SPLIT_ANGLE(1.37121617794037), + SCALE_SPLIT_ANGLE(1.38967239856720), + SCALE_SPLIT_ANGLE(1.43583393096924), + SCALE_SPLIT_ANGLE(1.48093688488007), + SCALE_SPLIT_ANGLE(1.55410325527191), + SCALE_SPLIT_ANGLE(1.68521773815155), + SCALE_SPLIT_ANGLE(1.80024886131287)}, + {SCALE_SPLIT_ANGLE(1.17258906364441), + SCALE_SPLIT_ANGLE(1.18893885612488), + SCALE_SPLIT_ANGLE(1.21383893489838), + SCALE_SPLIT_ANGLE(1.27678310871124), + SCALE_SPLIT_ANGLE(1.33930420875549), + SCALE_SPLIT_ANGLE(1.44322526454926), + SCALE_SPLIT_ANGLE(1.64006817340851), + SCALE_SPLIT_ANGLE(1.83627605438232)}, + {SCALE_SPLIT_ANGLE(0.96933782100677), + SCALE_SPLIT_ANGLE(0.98854482173920), + SCALE_SPLIT_ANGLE(1.01807177066803), + SCALE_SPLIT_ANGLE(1.09429967403412), + SCALE_SPLIT_ANGLE(1.17245352268219), + SCALE_SPLIT_ANGLE(1.30826878547668), + SCALE_SPLIT_ANGLE(1.58911180496216), + SCALE_SPLIT_ANGLE(1.92719435691834)}, + {SCALE_SPLIT_ANGLE(0.77729862928391), + SCALE_SPLIT_ANGLE(0.79675698280334), + SCALE_SPLIT_ANGLE(0.82701611518860), + SCALE_SPLIT_ANGLE(0.90724968910217), + SCALE_SPLIT_ANGLE(0.99302649497986), + SCALE_SPLIT_ANGLE(1.15163993835449), + SCALE_SPLIT_ANGLE(1.52265202999115), + SCALE_SPLIT_ANGLE(2.09869623184204)}, + {SCALE_SPLIT_ANGLE(0.61765128374100), + SCALE_SPLIT_ANGLE(0.63503885269165), + SCALE_SPLIT_ANGLE(0.66235077381134), + SCALE_SPLIT_ANGLE(0.73653638362885), + SCALE_SPLIT_ANGLE(0.81904613971710), + SCALE_SPLIT_ANGLE(0.98174768686295), + SCALE_SPLIT_ANGLE(1.42110538482666), + SCALE_SPLIT_ANGLE(2.28386068344116)}, + {SCALE_SPLIT_ANGLE(0.49486333131790), + SCALE_SPLIT_ANGLE(0.50909578800201), + SCALE_SPLIT_ANGLE(0.53160983324051), + SCALE_SPLIT_ANGLE(0.59379214048386), + SCALE_SPLIT_ANGLE(0.66487491130829), + SCALE_SPLIT_ANGLE(0.81185549497604), + SCALE_SPLIT_ANGLE(1.26233386993408), + SCALE_SPLIT_ANGLE(2.16925764083862)}, + {SCALE_SPLIT_ANGLE(0.40230560302734), + SCALE_SPLIT_ANGLE(0.41332274675369), + SCALE_SPLIT_ANGLE(0.43082228302956), + SCALE_SPLIT_ANGLE(0.47957953810692), + SCALE_SPLIT_ANGLE(0.53603589534760), + SCALE_SPLIT_ANGLE(0.65522658824921), + SCALE_SPLIT_ANGLE(1.04503858089447), + SCALE_SPLIT_ANGLE(1.87041807174683)}, + {SCALE_SPLIT_ANGLE(0.33104607462883), + SCALE_SPLIT_ANGLE(0.33927726745605), + SCALE_SPLIT_ANGLE(0.35237133502960), + SCALE_SPLIT_ANGLE(0.38892474770546), + SCALE_SPLIT_ANGLE(0.43126159906387), + SCALE_SPLIT_ANGLE(0.52027010917664), + SCALE_SPLIT_ANGLE(0.80654186010361), + SCALE_SPLIT_ANGLE(1.41960310935974)}, + {SCALE_SPLIT_ANGLE(0.27415537834167), + SCALE_SPLIT_ANGLE(0.28015670180321), + SCALE_SPLIT_ANGLE(0.28969678282738), + SCALE_SPLIT_ANGLE(0.31623730063438), + SCALE_SPLIT_ANGLE(0.34670370817184), + SCALE_SPLIT_ANGLE(0.40939208865166), + SCALE_SPLIT_ANGLE(0.59604310989380), + SCALE_SPLIT_ANGLE(0.94309806823730)}, + {SCALE_SPLIT_ANGLE(0.22730343043804), + SCALE_SPLIT_ANGLE(0.23159568011761), + SCALE_SPLIT_ANGLE(0.23840220272541), + SCALE_SPLIT_ANGLE(0.25720024108887), + SCALE_SPLIT_ANGLE(0.27846288681030), + SCALE_SPLIT_ANGLE(0.32089167833328), + SCALE_SPLIT_ANGLE(0.43515858054161), + SCALE_SPLIT_ANGLE(0.60621982812881)}, + {SCALE_SPLIT_ANGLE(0.17074465751648), + SCALE_SPLIT_ANGLE(0.17326098680496), + SCALE_SPLIT_ANGLE(0.17722852528095), + SCALE_SPLIT_ANGLE(0.18802370131016), + SCALE_SPLIT_ANGLE(0.19990929961205), + SCALE_SPLIT_ANGLE(0.22246663272381), + SCALE_SPLIT_ANGLE(0.27514943480492), + SCALE_SPLIT_ANGLE(0.33505329489708)}, + {SCALE_SPLIT_ANGLE(0.12695817649364), + SCALE_SPLIT_ANGLE(0.12838459014893), + SCALE_SPLIT_ANGLE(0.13061878085136), + SCALE_SPLIT_ANGLE(0.13660037517548), + SCALE_SPLIT_ANGLE(0.14301040768623), + SCALE_SPLIT_ANGLE(0.15463486313820), + SCALE_SPLIT_ANGLE(0.17893929779530), + SCALE_SPLIT_ANGLE(0.20203559100628)}, + {SCALE_SPLIT_ANGLE(0.09338590502739), + SCALE_SPLIT_ANGLE(0.09417138993740), + SCALE_SPLIT_ANGLE(0.09539390355349), + SCALE_SPLIT_ANGLE(0.09861853718758), + SCALE_SPLIT_ANGLE(0.10199318081141), + SCALE_SPLIT_ANGLE(0.10789106786251), + SCALE_SPLIT_ANGLE(0.11927830427885), + SCALE_SPLIT_ANGLE(0.12894381582737)}, + {SCALE_SPLIT_ANGLE(0.06804535537958), + SCALE_SPLIT_ANGLE(0.06846775114536), + SCALE_SPLIT_ANGLE(0.06912153959274), + SCALE_SPLIT_ANGLE(0.07082461565733), + SCALE_SPLIT_ANGLE(0.07257289439440), + SCALE_SPLIT_ANGLE(0.07554303854704), + SCALE_SPLIT_ANGLE(0.08096561580896), + SCALE_SPLIT_ANGLE(0.08524779230356)}, + {SCALE_SPLIT_ANGLE(0.04920704290271), + SCALE_SPLIT_ANGLE(0.04942999407649), + SCALE_SPLIT_ANGLE(0.04977354034781), + SCALE_SPLIT_ANGLE(0.05065960064530), + SCALE_SPLIT_ANGLE(0.05155571550131), + SCALE_SPLIT_ANGLE(0.05304637551308), + SCALE_SPLIT_ANGLE(0.05566369369626), + SCALE_SPLIT_ANGLE(0.05763531476259)}, + {SCALE_SPLIT_ANGLE(0.02832321822643), + SCALE_SPLIT_ANGLE(0.02839783765376), + SCALE_SPLIT_ANGLE(0.02851220779121), + SCALE_SPLIT_ANGLE(0.02880378998816), + SCALE_SPLIT_ANGLE(0.02909369394183), + SCALE_SPLIT_ANGLE(0.02956490404904), + SCALE_SPLIT_ANGLE(0.03035926818848), + SCALE_SPLIT_ANGLE(0.03093044832349)}, + {SCALE_SPLIT_ANGLE(0.01614263281226), + SCALE_SPLIT_ANGLE(0.01616701297462), + SCALE_SPLIT_ANGLE(0.01620426215231), + SCALE_SPLIT_ANGLE(0.01629856042564), + SCALE_SPLIT_ANGLE(0.01639137230814), + SCALE_SPLIT_ANGLE(0.01654022186995), + SCALE_SPLIT_ANGLE(0.01678557507694), + SCALE_SPLIT_ANGLE(0.01695770025253)}, + {SCALE_SPLIT_ANGLE(0.00914741214365), + SCALE_SPLIT_ANGLE(0.00915526598692), + SCALE_SPLIT_ANGLE(0.00916724558920), + SCALE_SPLIT_ANGLE(0.00919744372368), + SCALE_SPLIT_ANGLE(0.00922699086368), + SCALE_SPLIT_ANGLE(0.00927402079105), + SCALE_SPLIT_ANGLE(0.00935057550669), + SCALE_SPLIT_ANGLE(0.00940357148647)}, + {SCALE_SPLIT_ANGLE(0.00516631966457), + SCALE_SPLIT_ANGLE(0.00516883004457), + SCALE_SPLIT_ANGLE(0.00517265405506), + SCALE_SPLIT_ANGLE(0.00518227089196), + SCALE_SPLIT_ANGLE(0.00519165024161), + SCALE_SPLIT_ANGLE(0.00520651414990), + SCALE_SPLIT_ANGLE(0.00523054087535), + SCALE_SPLIT_ANGLE(0.00524705136195)}, + {SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564), + SCALE_SPLIT_ANGLE(0.00000002921564)}, + }, + { + {SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479), + SCALE_SPLIT_ANGLE(2.35619449615479)}, + {SCALE_SPLIT_ANGLE(2.35216379165649), + SCALE_SPLIT_ANGLE(2.35216617584229), + SCALE_SPLIT_ANGLE(2.35216999053955), + SCALE_SPLIT_ANGLE(2.35217905044556), + SCALE_SPLIT_ANGLE(2.35218811035156), + SCALE_SPLIT_ANGLE(2.35220217704773), + SCALE_SPLIT_ANGLE(2.35222482681274), + SCALE_SPLIT_ANGLE(2.35224032402039)}, + {SCALE_SPLIT_ANGLE(2.34895062446594), + SCALE_SPLIT_ANGLE(2.34895825386047), + SCALE_SPLIT_ANGLE(2.34897017478943), + SCALE_SPLIT_ANGLE(2.34899950027466), + SCALE_SPLIT_ANGLE(2.34902811050415), + SCALE_SPLIT_ANGLE(2.34907317161560), + SCALE_SPLIT_ANGLE(2.34914517402649), + SCALE_SPLIT_ANGLE(2.34919428825378)}, + {SCALE_SPLIT_ANGLE(2.34306812286377), + SCALE_SPLIT_ANGLE(2.34309291839600), + SCALE_SPLIT_ANGLE(2.34313082695007), + SCALE_SPLIT_ANGLE(2.34322524070740), + SCALE_SPLIT_ANGLE(2.34331679344177), + SCALE_SPLIT_ANGLE(2.34346079826355), + SCALE_SPLIT_ANGLE(2.34369087219238), + SCALE_SPLIT_ANGLE(2.34384727478027)}, + {SCALE_SPLIT_ANGLE(2.33205723762512), + SCALE_SPLIT_ANGLE(2.33213782310486), + SCALE_SPLIT_ANGLE(2.33226013183594), + SCALE_SPLIT_ANGLE(2.33256578445435), + SCALE_SPLIT_ANGLE(2.33286166191101), + SCALE_SPLIT_ANGLE(2.33332633972168), + SCALE_SPLIT_ANGLE(2.33406686782837), + SCALE_SPLIT_ANGLE(2.33456921577454)}, + {SCALE_SPLIT_ANGLE(2.31062912940979), + SCALE_SPLIT_ANGLE(2.31089663505554), + SCALE_SPLIT_ANGLE(2.31130218505859), + SCALE_SPLIT_ANGLE(2.31231284141541), + SCALE_SPLIT_ANGLE(2.31328654289246), + SCALE_SPLIT_ANGLE(2.31480789184570), + SCALE_SPLIT_ANGLE(2.31722092628479), + SCALE_SPLIT_ANGLE(2.31885290145874)}, + {SCALE_SPLIT_ANGLE(2.28808355331421), + SCALE_SPLIT_ANGLE(2.28864479064941), + SCALE_SPLIT_ANGLE(2.28949403762817), + SCALE_SPLIT_ANGLE(2.29160070419312), + SCALE_SPLIT_ANGLE(2.29361891746521), + SCALE_SPLIT_ANGLE(2.29675459861755), + SCALE_SPLIT_ANGLE(2.30169844627380), + SCALE_SPLIT_ANGLE(2.30503511428833)}, + {SCALE_SPLIT_ANGLE(2.25191521644592), + SCALE_SPLIT_ANGLE(2.25312566757202), + SCALE_SPLIT_ANGLE(2.25494909286499), + SCALE_SPLIT_ANGLE(2.25943517684937), + SCALE_SPLIT_ANGLE(2.26368880271912), + SCALE_SPLIT_ANGLE(2.27023100852966), + SCALE_SPLIT_ANGLE(2.28044486045837), + SCALE_SPLIT_ANGLE(2.28732299804688)}, + {SCALE_SPLIT_ANGLE(2.19093585014343), + SCALE_SPLIT_ANGLE(2.19366121292114), + SCALE_SPLIT_ANGLE(2.19773292541504), + SCALE_SPLIT_ANGLE(2.20759749412537), + SCALE_SPLIT_ANGLE(2.21677780151367), + SCALE_SPLIT_ANGLE(2.23064494132996), + SCALE_SPLIT_ANGLE(2.25193929672241), + SCALE_SPLIT_ANGLE(2.26625943183899)}, + {SCALE_SPLIT_ANGLE(2.08102917671204), + SCALE_SPLIT_ANGLE(2.08757281303406), + SCALE_SPLIT_ANGLE(2.09720706939697), + SCALE_SPLIT_ANGLE(2.11991167068481), + SCALE_SPLIT_ANGLE(2.14035654067993), + SCALE_SPLIT_ANGLE(2.17029213905334), + SCALE_SPLIT_ANGLE(2.21503138542175), + SCALE_SPLIT_ANGLE(2.24518108367920)}, + {SCALE_SPLIT_ANGLE(1.86738610267639), + SCALE_SPLIT_ANGLE(1.88426077365875), + SCALE_SPLIT_ANGLE(1.90853273868561), + SCALE_SPLIT_ANGLE(1.96333324909210), + SCALE_SPLIT_ANGLE(2.01024460792542), + SCALE_SPLIT_ANGLE(2.07577633857727), + SCALE_SPLIT_ANGLE(2.16986608505249), + SCALE_SPLIT_ANGLE(2.23406052589417)}, + {SCALE_SPLIT_ANGLE(1.61812174320221), + SCALE_SPLIT_ANGLE(1.64943754673004), + SCALE_SPLIT_ANGLE(1.69389235973358), + SCALE_SPLIT_ANGLE(1.79176020622253), + SCALE_SPLIT_ANGLE(1.87292492389679), + SCALE_SPLIT_ANGLE(1.98277986049652), + SCALE_SPLIT_ANGLE(2.13605809211731), + SCALE_SPLIT_ANGLE(2.24282979965210)}, + {SCALE_SPLIT_ANGLE(1.26556181907654), + SCALE_SPLIT_ANGLE(1.31512010097504), + SCALE_SPLIT_ANGLE(1.38608694076538), + SCALE_SPLIT_ANGLE(1.54419934749603), + SCALE_SPLIT_ANGLE(1.67621040344238), + SCALE_SPLIT_ANGLE(1.85417342185974), + SCALE_SPLIT_ANGLE(2.09956336021423), + SCALE_SPLIT_ANGLE(2.27729439735413)}, + {SCALE_SPLIT_ANGLE(0.88984864950180), + SCALE_SPLIT_ANGLE(0.94673132896423), + SCALE_SPLIT_ANGLE(1.03102219104767), + SCALE_SPLIT_ANGLE(1.23219704627991), + SCALE_SPLIT_ANGLE(1.41468584537506), + SCALE_SPLIT_ANGLE(1.67807435989380), + SCALE_SPLIT_ANGLE(2.05749273300171), + SCALE_SPLIT_ANGLE(2.35138511657715)}, + {SCALE_SPLIT_ANGLE(0.60630625486374), + SCALE_SPLIT_ANGLE(0.65551131963730), + SCALE_SPLIT_ANGLE(0.73032128810883), + SCALE_SPLIT_ANGLE(0.92225730419159), + SCALE_SPLIT_ANGLE(1.11866605281830), + SCALE_SPLIT_ANGLE(1.44806647300720), + SCALE_SPLIT_ANGLE(1.99872636795044), + SCALE_SPLIT_ANGLE(2.47302055358887)}, + {SCALE_SPLIT_ANGLE(0.43393731117249), + SCALE_SPLIT_ANGLE(0.47099208831787), + SCALE_SPLIT_ANGLE(0.52780759334564), + SCALE_SPLIT_ANGLE(0.67895972728729), + SCALE_SPLIT_ANGLE(0.84712409973145), + SCALE_SPLIT_ANGLE(1.17809724807739), + SCALE_SPLIT_ANGLE(1.89703977108002), + SCALE_SPLIT_ANGLE(2.59155654907227)}, + {SCALE_SPLIT_ANGLE(0.33522719144821), + SCALE_SPLIT_ANGLE(0.36133098602295), + SCALE_SPLIT_ANGLE(0.40159517526627), + SCALE_SPLIT_ANGLE(0.51039946079254), + SCALE_SPLIT_ANGLE(0.63590413331985), + SCALE_SPLIT_ANGLE(0.90812796354294), + SCALE_SPLIT_ANGLE(1.70793557167053), + SCALE_SPLIT_ANGLE(2.52852439880371)}, + {SCALE_SPLIT_ANGLE(0.27478924393654), + SCALE_SPLIT_ANGLE(0.29251149296761), + SCALE_SPLIT_ANGLE(0.32007756829262), + SCALE_SPLIT_ANGLE(0.39531299471855), + SCALE_SPLIT_ANGLE(0.48291319608688), + SCALE_SPLIT_ANGLE(0.67812001705170), + SCALE_SPLIT_ANGLE(1.39007341861725), + SCALE_SPLIT_ANGLE(2.34402561187744)}, + {SCALE_SPLIT_ANGLE(0.23185738921165), + SCALE_SPLIT_ANGLE(0.24370795488358), + SCALE_SPLIT_ANGLE(0.26227980852127), + SCALE_SPLIT_ANGLE(0.31327381730080), + SCALE_SPLIT_ANGLE(0.37241828441620), + SCALE_SPLIT_ANGLE(0.50202107429504), + SCALE_SPLIT_ANGLE(0.99085599184036), + SCALE_SPLIT_ANGLE(1.96553468704224)}, + {SCALE_SPLIT_ANGLE(0.19698308408260), + SCALE_SPLIT_ANGLE(0.20488271117210), + SCALE_SPLIT_ANGLE(0.21731524169445), + SCALE_SPLIT_ANGLE(0.25148212909698), + SCALE_SPLIT_ANGLE(0.29065516591072), + SCALE_SPLIT_ANGLE(0.37341466546059), + SCALE_SPLIT_ANGLE(0.65295964479446), + SCALE_SPLIT_ANGLE(1.28865826129913)}, + {SCALE_SPLIT_ANGLE(0.16667704284191), + SCALE_SPLIT_ANGLE(0.17194211483002), + SCALE_SPLIT_ANGLE(0.18023577332497), + SCALE_SPLIT_ANGLE(0.20293866097927), + SCALE_SPLIT_ANGLE(0.22855134308338), + SCALE_SPLIT_ANGLE(0.28041818737984), + SCALE_SPLIT_ANGLE(0.43142420053482), + SCALE_SPLIT_ANGLE(0.70030152797699)}, + {SCALE_SPLIT_ANGLE(0.12773877382278), + SCALE_SPLIT_ANGLE(0.13059370219707), + SCALE_SPLIT_ANGLE(0.13507819175720), + SCALE_SPLIT_ANGLE(0.14721076190472), + SCALE_SPLIT_ANGLE(0.16052412986755), + SCALE_SPLIT_ANGLE(0.18590225279331), + SCALE_SPLIT_ANGLE(0.24703904986382), + SCALE_SPLIT_ANGLE(0.32153329253197)}, + {SCALE_SPLIT_ANGLE(0.09603263437748), + SCALE_SPLIT_ANGLE(0.09756572544575), + SCALE_SPLIT_ANGLE(0.09996145218611), + SCALE_SPLIT_ANGLE(0.10635073482990), + SCALE_SPLIT_ANGLE(0.11317526549101), + SCALE_SPLIT_ANGLE(0.12554961442947), + SCALE_SPLIT_ANGLE(0.15168419480324), + SCALE_SPLIT_ANGLE(0.17713627219200)}, + {SCALE_SPLIT_ANGLE(0.07104731351137), + SCALE_SPLIT_ANGLE(0.07186015695333), + SCALE_SPLIT_ANGLE(0.07312334328890), + SCALE_SPLIT_ANGLE(0.07644616067410), + SCALE_SPLIT_ANGLE(0.07991369813681), + SCALE_SPLIT_ANGLE(0.08596338331699), + SCALE_SPLIT_ANGLE(0.09766443818808), + SCALE_SPLIT_ANGLE(0.10767273604870)}, + {SCALE_SPLIT_ANGLE(0.05192205682397), + SCALE_SPLIT_ANGLE(0.05234766751528), + SCALE_SPLIT_ANGLE(0.05300576984882), + SCALE_SPLIT_ANGLE(0.05471667647362), + SCALE_SPLIT_ANGLE(0.05646898597479), + SCALE_SPLIT_ANGLE(0.05943991243839), + SCALE_SPLIT_ANGLE(0.06485754251480), + SCALE_SPLIT_ANGLE(0.06914159655571)}, + {SCALE_SPLIT_ANGLE(0.03760399296880), + SCALE_SPLIT_ANGLE(0.03782445564866), + SCALE_SPLIT_ANGLE(0.03816393017769), + SCALE_SPLIT_ANGLE(0.03903824463487), + SCALE_SPLIT_ANGLE(0.03992090374231), + SCALE_SPLIT_ANGLE(0.04138650372624), + SCALE_SPLIT_ANGLE(0.04395476728678), + SCALE_SPLIT_ANGLE(0.04588782787323)}, + {SCALE_SPLIT_ANGLE(0.02166714705527), + SCALE_SPLIT_ANGLE(0.02173948101699), + SCALE_SPLIT_ANGLE(0.02185030654073), + SCALE_SPLIT_ANGLE(0.02213260531425), + SCALE_SPLIT_ANGLE(0.02241298183799), + SCALE_SPLIT_ANGLE(0.02286812849343), + SCALE_SPLIT_ANGLE(0.02363408915699), + SCALE_SPLIT_ANGLE(0.02418405190110)}, + {SCALE_SPLIT_ANGLE(0.01235313806683), + SCALE_SPLIT_ANGLE(0.01237650960684), + SCALE_SPLIT_ANGLE(0.01241220813245), + SCALE_SPLIT_ANGLE(0.01250253710896), + SCALE_SPLIT_ANGLE(0.01259138900787), + SCALE_SPLIT_ANGLE(0.01273377332836), + SCALE_SPLIT_ANGLE(0.01296819839627), + SCALE_SPLIT_ANGLE(0.01313247997314)}, + {SCALE_SPLIT_ANGLE(0.00700078532100), + SCALE_SPLIT_ANGLE(0.00700826756656), + SCALE_SPLIT_ANGLE(0.00701967673376), + SCALE_SPLIT_ANGLE(0.00704843224958), + SCALE_SPLIT_ANGLE(0.00707655772567), + SCALE_SPLIT_ANGLE(0.00712130358443), + SCALE_SPLIT_ANGLE(0.00719408970326), + SCALE_SPLIT_ANGLE(0.00724443979561)}, + {SCALE_SPLIT_ANGLE(0.00395406875759), + SCALE_SPLIT_ANGLE(0.00395645201206), + SCALE_SPLIT_ANGLE(0.00396008137614), + SCALE_SPLIT_ANGLE(0.00396920880303), + SCALE_SPLIT_ANGLE(0.00397810759023), + SCALE_SPLIT_ANGLE(0.00399220688269), + SCALE_SPLIT_ANGLE(0.00401498842984), + SCALE_SPLIT_ANGLE(0.00403063697740)}, + {SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068), + SCALE_SPLIT_ANGLE(0.00000002236068)}, + }, + { + {SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439), + SCALE_SPLIT_ANGLE(2.74889349937439)}, + {SCALE_SPLIT_ANGLE(2.74670672416687), + SCALE_SPLIT_ANGLE(2.74670815467834), + SCALE_SPLIT_ANGLE(2.74671053886414), + SCALE_SPLIT_ANGLE(2.74671602249146), + SCALE_SPLIT_ANGLE(2.74672174453735), + SCALE_SPLIT_ANGLE(2.74673032760620), + SCALE_SPLIT_ANGLE(2.74674415588379), + SCALE_SPLIT_ANGLE(2.74675345420837)}, + {SCALE_SPLIT_ANGLE(2.74495577812195), + SCALE_SPLIT_ANGLE(2.74496054649353), + SCALE_SPLIT_ANGLE(2.74496769905090), + SCALE_SPLIT_ANGLE(2.74498581886292), + SCALE_SPLIT_ANGLE(2.74500346183777), + SCALE_SPLIT_ANGLE(2.74503111839294), + SCALE_SPLIT_ANGLE(2.74507498741150), + SCALE_SPLIT_ANGLE(2.74510502815247)}, + {SCALE_SPLIT_ANGLE(2.74173212051392), + SCALE_SPLIT_ANGLE(2.74174761772156), + SCALE_SPLIT_ANGLE(2.74177098274231), + SCALE_SPLIT_ANGLE(2.74182939529419), + SCALE_SPLIT_ANGLE(2.74188613891602), + SCALE_SPLIT_ANGLE(2.74197483062744), + SCALE_SPLIT_ANGLE(2.74211573600769), + SCALE_SPLIT_ANGLE(2.74221110343933)}, + {SCALE_SPLIT_ANGLE(2.73563575744629), + SCALE_SPLIT_ANGLE(2.73568630218506), + SCALE_SPLIT_ANGLE(2.73576331138611), + SCALE_SPLIT_ANGLE(2.73595523834229), + SCALE_SPLIT_ANGLE(2.73614001274109), + SCALE_SPLIT_ANGLE(2.73642849922180), + SCALE_SPLIT_ANGLE(2.73688435554504), + SCALE_SPLIT_ANGLE(2.73719072341919)}, + {SCALE_SPLIT_ANGLE(2.72353148460388), + SCALE_SPLIT_ANGLE(2.72370529174805), + SCALE_SPLIT_ANGLE(2.72396802902222), + SCALE_SPLIT_ANGLE(2.72461819648743), + SCALE_SPLIT_ANGLE(2.72523880004883), + SCALE_SPLIT_ANGLE(2.72619819641113), + SCALE_SPLIT_ANGLE(2.72769498825073), + SCALE_SPLIT_ANGLE(2.72869181632996)}, + {SCALE_SPLIT_ANGLE(2.71044087409973), + SCALE_SPLIT_ANGLE(2.71081781387329), + SCALE_SPLIT_ANGLE(2.71138477325439), + SCALE_SPLIT_ANGLE(2.71277689933777), + SCALE_SPLIT_ANGLE(2.71409153938293), + SCALE_SPLIT_ANGLE(2.71610021591187), + SCALE_SPLIT_ANGLE(2.71919155120850), + SCALE_SPLIT_ANGLE(2.72123122215271)}, + {SCALE_SPLIT_ANGLE(2.68862843513489), + SCALE_SPLIT_ANGLE(2.68948626518250), + SCALE_SPLIT_ANGLE(2.69076681137085), + SCALE_SPLIT_ANGLE(2.69386243820190), + SCALE_SPLIT_ANGLE(2.69673037528992), + SCALE_SPLIT_ANGLE(2.70102667808533), + SCALE_SPLIT_ANGLE(2.70749115943909), + SCALE_SPLIT_ANGLE(2.71170210838318)}, + {SCALE_SPLIT_ANGLE(2.64932370185852), + SCALE_SPLIT_ANGLE(2.65145039558411), + SCALE_SPLIT_ANGLE(2.65457701683044), + SCALE_SPLIT_ANGLE(2.66191530227661), + SCALE_SPLIT_ANGLE(2.66847491264343), + SCALE_SPLIT_ANGLE(2.67795729637146), + SCALE_SPLIT_ANGLE(2.69169545173645), + SCALE_SPLIT_ANGLE(2.70048093795776)}, + {SCALE_SPLIT_ANGLE(2.56864428520203), + SCALE_SPLIT_ANGLE(2.57483482360840), + SCALE_SPLIT_ANGLE(2.58364057540894), + SCALE_SPLIT_ANGLE(2.60311055183411), + SCALE_SPLIT_ANGLE(2.61933612823486), + SCALE_SPLIT_ANGLE(2.64129805564880), + SCALE_SPLIT_ANGLE(2.67107844352722), + SCALE_SPLIT_ANGLE(2.68960857391357)}, + {SCALE_SPLIT_ANGLE(2.35773015022278), + SCALE_SPLIT_ANGLE(2.38251185417175), + SCALE_SPLIT_ANGLE(2.41520094871521), + SCALE_SPLIT_ANGLE(2.47876882553101), + SCALE_SPLIT_ANGLE(2.52468156814575), + SCALE_SPLIT_ANGLE(2.57956743240356), + SCALE_SPLIT_ANGLE(2.64563941955566), + SCALE_SPLIT_ANGLE(2.68501615524292)}, + {SCALE_SPLIT_ANGLE(1.95455360412598), + SCALE_SPLIT_ANGLE(2.03550028800964), + SCALE_SPLIT_ANGLE(2.13431143760681), + SCALE_SPLIT_ANGLE(2.30167627334595), + SCALE_SPLIT_ANGLE(2.40472936630249), + SCALE_SPLIT_ANGLE(2.51241874694824), + SCALE_SPLIT_ANGLE(2.62649774551392), + SCALE_SPLIT_ANGLE(2.69151234626770)}, + {SCALE_SPLIT_ANGLE(1.08639848232269), + SCALE_SPLIT_ANGLE(1.25607907772064), + SCALE_SPLIT_ANGLE(1.49360668659210), + SCALE_SPLIT_ANGLE(1.93062829971313), + SCALE_SPLIT_ANGLE(2.18087863922119), + SCALE_SPLIT_ANGLE(2.40583086013794), + SCALE_SPLIT_ANGLE(2.60574340820313), + SCALE_SPLIT_ANGLE(2.71224212646484)}, + {SCALE_SPLIT_ANGLE(0.46298864483833), + SCALE_SPLIT_ANGLE(0.57069420814514), + SCALE_SPLIT_ANGLE(0.74941867589951), + SCALE_SPLIT_ANGLE(1.27059137821198), + SCALE_SPLIT_ANGLE(1.74987781047821), + SCALE_SPLIT_ANGLE(2.22410750389099), + SCALE_SPLIT_ANGLE(2.58140015602112), + SCALE_SPLIT_ANGLE(2.75301027297974)}, + {SCALE_SPLIT_ANGLE(0.23063218593597), + SCALE_SPLIT_ANGLE(0.29689303040504), + SCALE_SPLIT_ANGLE(0.39820966124535), + SCALE_SPLIT_ANGLE(0.70773023366928), + SCALE_SPLIT_ANGLE(1.13546586036682), + SCALE_SPLIT_ANGLE(1.89722001552582), + SCALE_SPLIT_ANGLE(2.54544758796692), + SCALE_SPLIT_ANGLE(2.81490159034729)}, + {SCALE_SPLIT_ANGLE(0.14590546488762), + SCALE_SPLIT_ANGLE(0.19153353571892), + SCALE_SPLIT_ANGLE(0.25519019365311), + SCALE_SPLIT_ANGLE(0.43163710832596), + SCALE_SPLIT_ANGLE(0.67776858806610), + SCALE_SPLIT_ANGLE(1.37444674968719), + SCALE_SPLIT_ANGLE(2.47591257095337), + SCALE_SPLIT_ANGLE(2.87223863601685)}, + {SCALE_SPLIT_ANGLE(0.12191537022591), + SCALE_SPLIT_ANGLE(0.15053890645504), + SCALE_SPLIT_ANGLE(0.19072309136391), + SCALE_SPLIT_ANGLE(0.29725375771523), + SCALE_SPLIT_ANGLE(0.43550044298172), + SCALE_SPLIT_ANGLE(0.85167354345322), + SCALE_SPLIT_ANGLE(2.31663155555725), + SCALE_SPLIT_ANGLE(2.84442567825317)}, + {SCALE_SPLIT_ANGLE(0.11467454582453), + SCALE_SPLIT_ANGLE(0.13146138191223), + SCALE_SPLIT_ANGLE(0.15621000528336), + SCALE_SPLIT_ANGLE(0.22212918102741), + SCALE_SPLIT_ANGLE(0.30330246686935), + SCALE_SPLIT_ANGLE(0.52478593587875), + SCALE_SPLIT_ANGLE(1.91173267364502), + SCALE_SPLIT_ANGLE(2.75908088684082)}, + {SCALE_SPLIT_ANGLE(0.10720870643854), + SCALE_SPLIT_ANGLE(0.11720535159111), + SCALE_SPLIT_ANGLE(0.13246683776379), + SCALE_SPLIT_ANGLE(0.17369449138641), + SCALE_SPLIT_ANGLE(0.22279064357281), + SCALE_SPLIT_ANGLE(0.34306266903877), + SCALE_SPLIT_ANGLE(1.11311781406403), + SCALE_SPLIT_ANGLE(2.55312228202820)}, + {SCALE_SPLIT_ANGLE(0.09705757349730), + SCALE_SPLIT_ANGLE(0.10320189595222), + SCALE_SPLIT_ANGLE(0.11274837702513), + SCALE_SPLIT_ANGLE(0.13873106241226), + SCALE_SPLIT_ANGLE(0.16888953745365), + SCALE_SPLIT_ANGLE(0.23647473752499), + SCALE_SPLIT_ANGLE(0.53898406028748), + SCALE_SPLIT_ANGLE(1.80699026584625)}, + {SCALE_SPLIT_ANGLE(0.08528346568346), + SCALE_SPLIT_ANGLE(0.08915080130100), + SCALE_SPLIT_ANGLE(0.09520188719034), + SCALE_SPLIT_ANGLE(0.11166745424271), + SCALE_SPLIT_ANGLE(0.13034184277058), + SCALE_SPLIT_ANGLE(0.16932605206966), + SCALE_SPLIT_ANGLE(0.29887470602989), + SCALE_SPLIT_ANGLE(0.63077676296234)}, + {SCALE_SPLIT_ANGLE(0.06733843684196), + SCALE_SPLIT_ANGLE(0.06931617110968), + SCALE_SPLIT_ANGLE(0.07241340726614), + SCALE_SPLIT_ANGLE(0.08076417446136), + SCALE_SPLIT_ANGLE(0.08993341028690), + SCALE_SPLIT_ANGLE(0.10759533941746), + SCALE_SPLIT_ANGLE(0.15204638242722), + SCALE_SPLIT_ANGLE(0.21143139898777)}, + {SCALE_SPLIT_ANGLE(0.05132640898228), + SCALE_SPLIT_ANGLE(0.05234802886844), + SCALE_SPLIT_ANGLE(0.05394187942147), + SCALE_SPLIT_ANGLE(0.05818277224898), + SCALE_SPLIT_ANGLE(0.06270807981491), + SCALE_SPLIT_ANGLE(0.07093632966280), + SCALE_SPLIT_ANGLE(0.08856786042452), + SCALE_SPLIT_ANGLE(0.10623694956303)}, + {SCALE_SPLIT_ANGLE(0.03821930661798), + SCALE_SPLIT_ANGLE(0.03874678537250), + SCALE_SPLIT_ANGLE(0.03956566005945), + SCALE_SPLIT_ANGLE(0.04171610623598), + SCALE_SPLIT_ANGLE(0.04395710676908), + SCALE_SPLIT_ANGLE(0.04786692932248), + SCALE_SPLIT_ANGLE(0.05546034500003), + SCALE_SPLIT_ANGLE(0.06201593577862)}, + {SCALE_SPLIT_ANGLE(0.02801758050919), + SCALE_SPLIT_ANGLE(0.02828873321414), + SCALE_SPLIT_ANGLE(0.02870770171285), + SCALE_SPLIT_ANGLE(0.02979558333755), + SCALE_SPLIT_ANGLE(0.03090834617615), + SCALE_SPLIT_ANGLE(0.03279331326485), + SCALE_SPLIT_ANGLE(0.03623208031058), + SCALE_SPLIT_ANGLE(0.03895835205913)}, + {SCALE_SPLIT_ANGLE(0.02032180689275), + SCALE_SPLIT_ANGLE(0.02046046219766), + SCALE_SPLIT_ANGLE(0.02067386545241), + SCALE_SPLIT_ANGLE(0.02122297696769), + SCALE_SPLIT_ANGLE(0.02177673391998), + SCALE_SPLIT_ANGLE(0.02269527874887), + SCALE_SPLIT_ANGLE(0.02430364489555), + SCALE_SPLIT_ANGLE(0.02551441825926)}, + {SCALE_SPLIT_ANGLE(0.01172095164657), + SCALE_SPLIT_ANGLE(0.01176583208144), + SCALE_SPLIT_ANGLE(0.01183457672596), + SCALE_SPLIT_ANGLE(0.01200959738344), + SCALE_SPLIT_ANGLE(0.01218330394477), + SCALE_SPLIT_ANGLE(0.01246506255120), + SCALE_SPLIT_ANGLE(0.01293875463307), + SCALE_SPLIT_ANGLE(0.01327861472964)}, + {SCALE_SPLIT_ANGLE(0.00668454170227), + SCALE_SPLIT_ANGLE(0.00669893343002), + SCALE_SPLIT_ANGLE(0.00672091403976), + SCALE_SPLIT_ANGLE(0.00677651492879), + SCALE_SPLIT_ANGLE(0.00683118170127), + SCALE_SPLIT_ANGLE(0.00691874232143), + SCALE_SPLIT_ANGLE(0.00706279883161), + SCALE_SPLIT_ANGLE(0.00716368528083)}, + {SCALE_SPLIT_ANGLE(0.00378863257356), + SCALE_SPLIT_ANGLE(0.00379322143272), + SCALE_SPLIT_ANGLE(0.00380021659657), + SCALE_SPLIT_ANGLE(0.00381784536876), + SCALE_SPLIT_ANGLE(0.00383508414961), + SCALE_SPLIT_ANGLE(0.00386250065640), + SCALE_SPLIT_ANGLE(0.00390707794577), + SCALE_SPLIT_ANGLE(0.00393790053204)}, + {SCALE_SPLIT_ANGLE(0.00213989755139), + SCALE_SPLIT_ANGLE(0.00214135553688), + SCALE_SPLIT_ANGLE(0.00214357557707), + SCALE_SPLIT_ANGLE(0.00214915862307), + SCALE_SPLIT_ANGLE(0.00215460127220), + SCALE_SPLIT_ANGLE(0.00216322275810), + SCALE_SPLIT_ANGLE(0.00217714952305), + SCALE_SPLIT_ANGLE(0.00218671280891)}, + {SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210151), + SCALE_SPLIT_ANGLE(0.00000001210152), + SCALE_SPLIT_ANGLE(0.00000001210152), + SCALE_SPLIT_ANGLE(0.00000001210152), + SCALE_SPLIT_ANGLE(0.00000001210152), + SCALE_SPLIT_ANGLE(0.00000001210152)}, + }, + { + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000036774148), + SCALE_SPLIT_ANGLE(-0.00000066993488), + SCALE_SPLIT_ANGLE(-0.00001151842844), + SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000008554968), + SCALE_SPLIT_ANGLE(-0.00000012210570), + SCALE_SPLIT_ANGLE(-0.00000019699247), + SCALE_SPLIT_ANGLE(-0.00000110842382), + SCALE_SPLIT_ANGLE(-3.14159202575684), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000003016602), + SCALE_SPLIT_ANGLE(-0.00000005321843), + SCALE_SPLIT_ANGLE(-0.00000008440014), + SCALE_SPLIT_ANGLE(-0.00000020468090), + SCALE_SPLIT_ANGLE(-0.00000071846705), + SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000000024720), + SCALE_SPLIT_ANGLE(-0.00000003226497), + SCALE_SPLIT_ANGLE(-0.00000005171609), + SCALE_SPLIT_ANGLE(-0.00000010526998), + SCALE_SPLIT_ANGLE(-0.00000020551137), + SCALE_SPLIT_ANGLE(-1.57079637050629), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000001688349), + SCALE_SPLIT_ANGLE(-0.00000002741881), + SCALE_SPLIT_ANGLE(-0.00000003926384), + SCALE_SPLIT_ANGLE(-0.00000006928260), + SCALE_SPLIT_ANGLE(-0.00000011240582), + SCALE_SPLIT_ANGLE(-0.00000033763689), + SCALE_SPLIT_ANGLE(-3.14159250259399), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000002143362), + SCALE_SPLIT_ANGLE(-0.00000002640935), + SCALE_SPLIT_ANGLE(-0.00000003328325), + SCALE_SPLIT_ANGLE(-0.00000005112437), + SCALE_SPLIT_ANGLE(-0.00000007399619), + SCALE_SPLIT_ANGLE(-0.00000014946792), + SCALE_SPLIT_ANGLE(-3.14159226417542), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000002225921), + SCALE_SPLIT_ANGLE(-0.00000002497380), + SCALE_SPLIT_ANGLE(-0.00000002903169), + SCALE_SPLIT_ANGLE(-0.00000003987020), + SCALE_SPLIT_ANGLE(-0.00000005300816), + SCALE_SPLIT_ANGLE(-0.00000008783893), + SCALE_SPLIT_ANGLE(-0.00000093762065), + SCALE_SPLIT_ANGLE(-3.14159250259399)}, + {SCALE_SPLIT_ANGLE(-0.00000002109218), + SCALE_SPLIT_ANGLE(-0.00000002269230), + SCALE_SPLIT_ANGLE(-0.00000002515904), + SCALE_SPLIT_ANGLE(-0.00000003183984), + SCALE_SPLIT_ANGLE(-0.00000003965878), + SCALE_SPLIT_ANGLE(-0.00000005782364), + SCALE_SPLIT_ANGLE(-0.00000016152633), + SCALE_SPLIT_ANGLE(-3.14159226417542)}, + {SCALE_SPLIT_ANGLE(-0.00000001895314), + SCALE_SPLIT_ANGLE(-0.00000001993623), + SCALE_SPLIT_ANGLE(-0.00000002146927), + SCALE_SPLIT_ANGLE(-0.00000002563087), + SCALE_SPLIT_ANGLE(-0.00000003036888), + SCALE_SPLIT_ANGLE(-0.00000004043087), + SCALE_SPLIT_ANGLE(-0.00000007667983), + SCALE_SPLIT_ANGLE(-0.00000021028936)}, + {SCALE_SPLIT_ANGLE(-0.00000001519980), + SCALE_SPLIT_ANGLE(-0.00000001569144), + SCALE_SPLIT_ANGLE(-0.00000001646043), + SCALE_SPLIT_ANGLE(-0.00000001853141), + SCALE_SPLIT_ANGLE(-0.00000002080756), + SCALE_SPLIT_ANGLE(-0.00000002521688), + SCALE_SPLIT_ANGLE(-0.00000003656274), + SCALE_SPLIT_ANGLE(-0.00000005247700)}, + {SCALE_SPLIT_ANGLE(-0.00000001166148), + SCALE_SPLIT_ANGLE(-0.00000001191188), + SCALE_SPLIT_ANGLE(-0.00000001230229), + SCALE_SPLIT_ANGLE(-0.00000001334031), + SCALE_SPLIT_ANGLE(-0.00000001444787), + SCALE_SPLIT_ANGLE(-0.00000001646512), + SCALE_SPLIT_ANGLE(-0.00000002081803), + SCALE_SPLIT_ANGLE(-0.00000002523831)}, + {SCALE_SPLIT_ANGLE(-0.00000000870876), + SCALE_SPLIT_ANGLE(-0.00000000883681), + SCALE_SPLIT_ANGLE(-0.00000000903554), + SCALE_SPLIT_ANGLE(-0.00000000955712), + SCALE_SPLIT_ANGLE(-0.00000001010047), + SCALE_SPLIT_ANGLE(-0.00000001104868), + SCALE_SPLIT_ANGLE(-0.00000001289412), + SCALE_SPLIT_ANGLE(-0.00000001449405)}, + {SCALE_SPLIT_ANGLE(-0.00000000639270), + SCALE_SPLIT_ANGLE(-0.00000000645810), + SCALE_SPLIT_ANGLE(-0.00000000655912), + SCALE_SPLIT_ANGLE(-0.00000000682132), + SCALE_SPLIT_ANGLE(-0.00000000708940), + SCALE_SPLIT_ANGLE(-0.00000000754343), + SCALE_SPLIT_ANGLE(-0.00000000837207), + SCALE_SPLIT_ANGLE(-0.00000000902983)}, + {SCALE_SPLIT_ANGLE(-0.00000000463970), + SCALE_SPLIT_ANGLE(-0.00000000467299), + SCALE_SPLIT_ANGLE(-0.00000000472421), + SCALE_SPLIT_ANGLE(-0.00000000485598), + SCALE_SPLIT_ANGLE(-0.00000000498881), + SCALE_SPLIT_ANGLE(-0.00000000520907), + SCALE_SPLIT_ANGLE(-0.00000000559469), + SCALE_SPLIT_ANGLE(-0.00000000588504)}, + {SCALE_SPLIT_ANGLE(-0.00000000267713), + SCALE_SPLIT_ANGLE(-0.00000000268785), + SCALE_SPLIT_ANGLE(-0.00000000270428), + SCALE_SPLIT_ANGLE(-0.00000000274608), + SCALE_SPLIT_ANGLE(-0.00000000278756), + SCALE_SPLIT_ANGLE(-0.00000000285483), + SCALE_SPLIT_ANGLE(-0.00000000296788), + SCALE_SPLIT_ANGLE(-0.00000000304897)}, + {SCALE_SPLIT_ANGLE(-0.00000000152698), + SCALE_SPLIT_ANGLE(-0.00000000153041), + SCALE_SPLIT_ANGLE(-0.00000000153564), + SCALE_SPLIT_ANGLE(-0.00000000154889), + SCALE_SPLIT_ANGLE(-0.00000000156191), + SCALE_SPLIT_ANGLE(-0.00000000158277), + SCALE_SPLIT_ANGLE(-0.00000000161707), + SCALE_SPLIT_ANGLE(-0.00000000164109)}, + {SCALE_SPLIT_ANGLE(-0.00000000086549), + SCALE_SPLIT_ANGLE(-0.00000000086658), + SCALE_SPLIT_ANGLE(-0.00000000086824), + SCALE_SPLIT_ANGLE(-0.00000000087244), + SCALE_SPLIT_ANGLE(-0.00000000087654), + SCALE_SPLIT_ANGLE(-0.00000000088306), + SCALE_SPLIT_ANGLE(-0.00000000089366), + SCALE_SPLIT_ANGLE(-0.00000000090099)}, + {SCALE_SPLIT_ANGLE(-0.00000000048885), + SCALE_SPLIT_ANGLE(-0.00000000048920), + SCALE_SPLIT_ANGLE(-0.00000000048972), + SCALE_SPLIT_ANGLE(-0.00000000049105), + SCALE_SPLIT_ANGLE(-0.00000000049235), + SCALE_SPLIT_ANGLE(-0.00000000049439), + SCALE_SPLIT_ANGLE(-0.00000000049770), + SCALE_SPLIT_ANGLE(-0.00000000049998)}, + {SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000), + SCALE_SPLIT_ANGLE(-0.00000000000000)}, + }, + { + {SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439), + SCALE_SPLIT_ANGLE(-2.74889349937439)}, + {SCALE_SPLIT_ANGLE(-2.74670672416687), + SCALE_SPLIT_ANGLE(-2.74670815467834), + SCALE_SPLIT_ANGLE(-2.74671053886414), + SCALE_SPLIT_ANGLE(-2.74671626091003), + SCALE_SPLIT_ANGLE(-2.74672174453735), + SCALE_SPLIT_ANGLE(-2.74673032760620), + SCALE_SPLIT_ANGLE(-2.74674415588379), + SCALE_SPLIT_ANGLE(-2.74675369262695)}, + {SCALE_SPLIT_ANGLE(-2.74495577812195), + SCALE_SPLIT_ANGLE(-2.74496054649353), + SCALE_SPLIT_ANGLE(-2.74496769905090), + SCALE_SPLIT_ANGLE(-2.74498581886292), + SCALE_SPLIT_ANGLE(-2.74500346183777), + SCALE_SPLIT_ANGLE(-2.74503111839294), + SCALE_SPLIT_ANGLE(-2.74507522583008), + SCALE_SPLIT_ANGLE(-2.74510502815247)}, + {SCALE_SPLIT_ANGLE(-2.74173235893250), + SCALE_SPLIT_ANGLE(-2.74174761772156), + SCALE_SPLIT_ANGLE(-2.74177098274231), + SCALE_SPLIT_ANGLE(-2.74182963371277), + SCALE_SPLIT_ANGLE(-2.74188613891602), + SCALE_SPLIT_ANGLE(-2.74197483062744), + SCALE_SPLIT_ANGLE(-2.74211597442627), + SCALE_SPLIT_ANGLE(-2.74221134185791)}, + {SCALE_SPLIT_ANGLE(-2.73563575744629), + SCALE_SPLIT_ANGLE(-2.73568654060364), + SCALE_SPLIT_ANGLE(-2.73576331138611), + SCALE_SPLIT_ANGLE(-2.73595523834229), + SCALE_SPLIT_ANGLE(-2.73614001274109), + SCALE_SPLIT_ANGLE(-2.73642849922180), + SCALE_SPLIT_ANGLE(-2.73688435554504), + SCALE_SPLIT_ANGLE(-2.73719096183777)}, + {SCALE_SPLIT_ANGLE(-2.72353172302246), + SCALE_SPLIT_ANGLE(-2.72370529174805), + SCALE_SPLIT_ANGLE(-2.72396802902222), + SCALE_SPLIT_ANGLE(-2.72461819648743), + SCALE_SPLIT_ANGLE(-2.72523903846741), + SCALE_SPLIT_ANGLE(-2.72619819641113), + SCALE_SPLIT_ANGLE(-2.72769522666931), + SCALE_SPLIT_ANGLE(-2.72869181632996)}, + {SCALE_SPLIT_ANGLE(-2.71044111251831), + SCALE_SPLIT_ANGLE(-2.71081781387329), + SCALE_SPLIT_ANGLE(-2.71138477325439), + SCALE_SPLIT_ANGLE(-2.71277689933777), + SCALE_SPLIT_ANGLE(-2.71409153938293), + SCALE_SPLIT_ANGLE(-2.71610021591187), + SCALE_SPLIT_ANGLE(-2.71919155120850), + SCALE_SPLIT_ANGLE(-2.72123122215271)}, + {SCALE_SPLIT_ANGLE(-2.68862843513489), + SCALE_SPLIT_ANGLE(-2.68948626518250), + SCALE_SPLIT_ANGLE(-2.69076681137085), + SCALE_SPLIT_ANGLE(-2.69386243820190), + SCALE_SPLIT_ANGLE(-2.69673061370850), + SCALE_SPLIT_ANGLE(-2.70102667808533), + SCALE_SPLIT_ANGLE(-2.70749115943909), + SCALE_SPLIT_ANGLE(-2.71170234680176)}, + {SCALE_SPLIT_ANGLE(-2.64932370185852), + SCALE_SPLIT_ANGLE(-2.65145063400269), + SCALE_SPLIT_ANGLE(-2.65457701683044), + SCALE_SPLIT_ANGLE(-2.66191530227661), + SCALE_SPLIT_ANGLE(-2.66847491264343), + SCALE_SPLIT_ANGLE(-2.67795729637146), + SCALE_SPLIT_ANGLE(-2.69169569015503), + SCALE_SPLIT_ANGLE(-2.70048117637634)}, + {SCALE_SPLIT_ANGLE(-2.56864428520203), + SCALE_SPLIT_ANGLE(-2.57483482360840), + SCALE_SPLIT_ANGLE(-2.58364057540894), + SCALE_SPLIT_ANGLE(-2.60311055183411), + SCALE_SPLIT_ANGLE(-2.61933612823486), + SCALE_SPLIT_ANGLE(-2.64129829406738), + SCALE_SPLIT_ANGLE(-2.67107868194580), + SCALE_SPLIT_ANGLE(-2.68960881233215)}, + {SCALE_SPLIT_ANGLE(-2.35773015022278), + SCALE_SPLIT_ANGLE(-2.38251185417175), + SCALE_SPLIT_ANGLE(-2.41520094871521), + SCALE_SPLIT_ANGLE(-2.47876906394959), + SCALE_SPLIT_ANGLE(-2.52468156814575), + SCALE_SPLIT_ANGLE(-2.57956743240356), + SCALE_SPLIT_ANGLE(-2.64563965797424), + SCALE_SPLIT_ANGLE(-2.68501615524292)}, + {SCALE_SPLIT_ANGLE(-1.95455360412598), + SCALE_SPLIT_ANGLE(-2.03550028800964), + SCALE_SPLIT_ANGLE(-2.13431143760681), + SCALE_SPLIT_ANGLE(-2.30167627334595), + SCALE_SPLIT_ANGLE(-2.40472936630249), + SCALE_SPLIT_ANGLE(-2.51241874694824), + SCALE_SPLIT_ANGLE(-2.62649774551392), + SCALE_SPLIT_ANGLE(-2.69151234626770)}, + {SCALE_SPLIT_ANGLE(-1.08639836311340), + SCALE_SPLIT_ANGLE(-1.25607907772064), + SCALE_SPLIT_ANGLE(-1.49360668659210), + SCALE_SPLIT_ANGLE(-1.93062829971313), + SCALE_SPLIT_ANGLE(-2.18087887763977), + SCALE_SPLIT_ANGLE(-2.40583086013794), + SCALE_SPLIT_ANGLE(-2.60574340820313), + SCALE_SPLIT_ANGLE(-2.71224212646484)}, + {SCALE_SPLIT_ANGLE(-0.46298858523369), + SCALE_SPLIT_ANGLE(-0.57069414854050), + SCALE_SPLIT_ANGLE(-0.74941855669022), + SCALE_SPLIT_ANGLE(-1.27059125900269), + SCALE_SPLIT_ANGLE(-1.74987781047821), + SCALE_SPLIT_ANGLE(-2.22410750389099), + SCALE_SPLIT_ANGLE(-2.58140015602112), + SCALE_SPLIT_ANGLE(-2.75301027297974)}, + {SCALE_SPLIT_ANGLE(-0.23063215613365), + SCALE_SPLIT_ANGLE(-0.29689297080040), + SCALE_SPLIT_ANGLE(-0.39820960164070), + SCALE_SPLIT_ANGLE(-0.70773017406464), + SCALE_SPLIT_ANGLE(-1.13546574115753), + SCALE_SPLIT_ANGLE(-1.89722001552582), + SCALE_SPLIT_ANGLE(-2.54544782638550), + SCALE_SPLIT_ANGLE(-2.81490182876587)}, + {SCALE_SPLIT_ANGLE(-0.14590544998646), + SCALE_SPLIT_ANGLE(-0.19153350591660), + SCALE_SPLIT_ANGLE(-0.25519016385078), + SCALE_SPLIT_ANGLE(-0.43163704872131), + SCALE_SPLIT_ANGLE(-0.67776852846146), + SCALE_SPLIT_ANGLE(-1.37444674968719), + SCALE_SPLIT_ANGLE(-2.47591280937195), + SCALE_SPLIT_ANGLE(-2.87223863601685)}, + {SCALE_SPLIT_ANGLE(-0.12191534787416), + SCALE_SPLIT_ANGLE(-0.15053887665272), + SCALE_SPLIT_ANGLE(-0.19072306156158), + SCALE_SPLIT_ANGLE(-0.29725372791290), + SCALE_SPLIT_ANGLE(-0.43550038337708), + SCALE_SPLIT_ANGLE(-0.85167348384857), + SCALE_SPLIT_ANGLE(-2.31663155555725), + SCALE_SPLIT_ANGLE(-2.84442567825317)}, + {SCALE_SPLIT_ANGLE(-0.11467452347279), + SCALE_SPLIT_ANGLE(-0.13146135210991), + SCALE_SPLIT_ANGLE(-0.15620997548103), + SCALE_SPLIT_ANGLE(-0.22212913632393), + SCALE_SPLIT_ANGLE(-0.30330240726471), + SCALE_SPLIT_ANGLE(-0.52478587627411), + SCALE_SPLIT_ANGLE(-1.91173267364502), + SCALE_SPLIT_ANGLE(-2.75908088684082)}, + {SCALE_SPLIT_ANGLE(-0.10720869153738), + SCALE_SPLIT_ANGLE(-0.11720532923937), + SCALE_SPLIT_ANGLE(-0.13246680796146), + SCALE_SPLIT_ANGLE(-0.17369446158409), + SCALE_SPLIT_ANGLE(-0.22279061377048), + SCALE_SPLIT_ANGLE(-0.34306260943413), + SCALE_SPLIT_ANGLE(-1.11311769485474), + SCALE_SPLIT_ANGLE(-2.55312228202820)}, + {SCALE_SPLIT_ANGLE(-0.09705755859613), + SCALE_SPLIT_ANGLE(-0.10320188105106), + SCALE_SPLIT_ANGLE(-0.11274836212397), + SCALE_SPLIT_ANGLE(-0.13873104751110), + SCALE_SPLIT_ANGLE(-0.16888950765133), + SCALE_SPLIT_ANGLE(-0.23647469282150), + SCALE_SPLIT_ANGLE(-0.53898400068283), + SCALE_SPLIT_ANGLE(-1.80699026584625)}, + {SCALE_SPLIT_ANGLE(-0.08528345078230), + SCALE_SPLIT_ANGLE(-0.08915078639984), + SCALE_SPLIT_ANGLE(-0.09520187228918), + SCALE_SPLIT_ANGLE(-0.11166743934155), + SCALE_SPLIT_ANGLE(-0.13034182786942), + SCALE_SPLIT_ANGLE(-0.16932602226734), + SCALE_SPLIT_ANGLE(-0.29887464642525), + SCALE_SPLIT_ANGLE(-0.63077670335770)}, + {SCALE_SPLIT_ANGLE(-0.06733842939138), + SCALE_SPLIT_ANGLE(-0.06931615620852), + SCALE_SPLIT_ANGLE(-0.07241339236498), + SCALE_SPLIT_ANGLE(-0.08076415956020), + SCALE_SPLIT_ANGLE(-0.08993339538574), + SCALE_SPLIT_ANGLE(-0.10759532451630), + SCALE_SPLIT_ANGLE(-0.15204635262489), + SCALE_SPLIT_ANGLE(-0.21143136918545)}, + {SCALE_SPLIT_ANGLE(-0.05132640153170), + SCALE_SPLIT_ANGLE(-0.05234802141786), + SCALE_SPLIT_ANGLE(-0.05394186824560), + SCALE_SPLIT_ANGLE(-0.05818276479840), + SCALE_SPLIT_ANGLE(-0.06270807236433), + SCALE_SPLIT_ANGLE(-0.07093632221222), + SCALE_SPLIT_ANGLE(-0.08856784552336), + SCALE_SPLIT_ANGLE(-0.10623692721128)}, + {SCALE_SPLIT_ANGLE(-0.03821930289268), + SCALE_SPLIT_ANGLE(-0.03874678164721), + SCALE_SPLIT_ANGLE(-0.03956565260887), + SCALE_SPLIT_ANGLE(-0.04171609878540), + SCALE_SPLIT_ANGLE(-0.04395709931850), + SCALE_SPLIT_ANGLE(-0.04786692187190), + SCALE_SPLIT_ANGLE(-0.05546033382416), + SCALE_SPLIT_ANGLE(-0.06201592460275)}, + {SCALE_SPLIT_ANGLE(-0.02801757678390), + SCALE_SPLIT_ANGLE(-0.02828872948885), + SCALE_SPLIT_ANGLE(-0.02870769798756), + SCALE_SPLIT_ANGLE(-0.02979557774961), + SCALE_SPLIT_ANGLE(-0.03090834245086), + SCALE_SPLIT_ANGLE(-0.03279330953956), + SCALE_SPLIT_ANGLE(-0.03623207286000), + SCALE_SPLIT_ANGLE(-0.03895834833384)}, + {SCALE_SPLIT_ANGLE(-0.02032180316746), + SCALE_SPLIT_ANGLE(-0.02046045847237), + SCALE_SPLIT_ANGLE(-0.02067386172712), + SCALE_SPLIT_ANGLE(-0.02122297324240), + SCALE_SPLIT_ANGLE(-0.02177673205733), + SCALE_SPLIT_ANGLE(-0.02269527502358), + SCALE_SPLIT_ANGLE(-0.02430364117026), + SCALE_SPLIT_ANGLE(-0.02551441267133)}, + {SCALE_SPLIT_ANGLE(-0.01172094978392), + SCALE_SPLIT_ANGLE(-0.01176583021879), + SCALE_SPLIT_ANGLE(-0.01183457486331), + SCALE_SPLIT_ANGLE(-0.01200959552079), + SCALE_SPLIT_ANGLE(-0.01218330208212), + SCALE_SPLIT_ANGLE(-0.01246506068856), + SCALE_SPLIT_ANGLE(-0.01293875277042), + SCALE_SPLIT_ANGLE(-0.01327861286700)}, + {SCALE_SPLIT_ANGLE(-0.00668454030529), + SCALE_SPLIT_ANGLE(-0.00669893249869), + SCALE_SPLIT_ANGLE(-0.00672091310844), + SCALE_SPLIT_ANGLE(-0.00677651399747), + SCALE_SPLIT_ANGLE(-0.00683118030429), + SCALE_SPLIT_ANGLE(-0.00691874139011), + SCALE_SPLIT_ANGLE(-0.00706279790029), + SCALE_SPLIT_ANGLE(-0.00716368434951)}, + {SCALE_SPLIT_ANGLE(-0.00378863210790), + SCALE_SPLIT_ANGLE(-0.00379322096705), + SCALE_SPLIT_ANGLE(-0.00380021613091), + SCALE_SPLIT_ANGLE(-0.00381784490310), + SCALE_SPLIT_ANGLE(-0.00383508345112), + SCALE_SPLIT_ANGLE(-0.00386250019073), + SCALE_SPLIT_ANGLE(-0.00390707701445), + SCALE_SPLIT_ANGLE(-0.00393790006638)}, + {SCALE_SPLIT_ANGLE(-0.00213989731856), + SCALE_SPLIT_ANGLE(-0.00214135507122), + SCALE_SPLIT_ANGLE(-0.00214357534423), + SCALE_SPLIT_ANGLE(-0.00214915839024), + SCALE_SPLIT_ANGLE(-0.00215460080653), + SCALE_SPLIT_ANGLE(-0.00216322229244), + SCALE_SPLIT_ANGLE(-0.00217714929022), + SCALE_SPLIT_ANGLE(-0.00218671257608)}, + {SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151)}, + }, + { + {SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479), + SCALE_SPLIT_ANGLE(-2.35619449615479)}, + {SCALE_SPLIT_ANGLE(-2.35216379165649), + SCALE_SPLIT_ANGLE(-2.35216617584229), + SCALE_SPLIT_ANGLE(-2.35216999053955), + SCALE_SPLIT_ANGLE(-2.35217928886414), + SCALE_SPLIT_ANGLE(-2.35218811035156), + SCALE_SPLIT_ANGLE(-2.35220241546631), + SCALE_SPLIT_ANGLE(-2.35222506523132), + SCALE_SPLIT_ANGLE(-2.35224032402039)}, + {SCALE_SPLIT_ANGLE(-2.34895062446594), + SCALE_SPLIT_ANGLE(-2.34895849227905), + SCALE_SPLIT_ANGLE(-2.34897017478943), + SCALE_SPLIT_ANGLE(-2.34899973869324), + SCALE_SPLIT_ANGLE(-2.34902834892273), + SCALE_SPLIT_ANGLE(-2.34907317161560), + SCALE_SPLIT_ANGLE(-2.34914541244507), + SCALE_SPLIT_ANGLE(-2.34919428825378)}, + {SCALE_SPLIT_ANGLE(-2.34306836128235), + SCALE_SPLIT_ANGLE(-2.34309315681458), + SCALE_SPLIT_ANGLE(-2.34313082695007), + SCALE_SPLIT_ANGLE(-2.34322524070740), + SCALE_SPLIT_ANGLE(-2.34331679344177), + SCALE_SPLIT_ANGLE(-2.34346079826355), + SCALE_SPLIT_ANGLE(-2.34369087219238), + SCALE_SPLIT_ANGLE(-2.34384727478027)}, + {SCALE_SPLIT_ANGLE(-2.33205747604370), + SCALE_SPLIT_ANGLE(-2.33213782310486), + SCALE_SPLIT_ANGLE(-2.33226013183594), + SCALE_SPLIT_ANGLE(-2.33256602287292), + SCALE_SPLIT_ANGLE(-2.33286190032959), + SCALE_SPLIT_ANGLE(-2.33332633972168), + SCALE_SPLIT_ANGLE(-2.33406710624695), + SCALE_SPLIT_ANGLE(-2.33456921577454)}, + {SCALE_SPLIT_ANGLE(-2.31062936782837), + SCALE_SPLIT_ANGLE(-2.31089687347412), + SCALE_SPLIT_ANGLE(-2.31130218505859), + SCALE_SPLIT_ANGLE(-2.31231284141541), + SCALE_SPLIT_ANGLE(-2.31328654289246), + SCALE_SPLIT_ANGLE(-2.31480813026428), + SCALE_SPLIT_ANGLE(-2.31722092628479), + SCALE_SPLIT_ANGLE(-2.31885290145874)}, + {SCALE_SPLIT_ANGLE(-2.28808355331421), + SCALE_SPLIT_ANGLE(-2.28864479064941), + SCALE_SPLIT_ANGLE(-2.28949403762817), + SCALE_SPLIT_ANGLE(-2.29160070419312), + SCALE_SPLIT_ANGLE(-2.29361891746521), + SCALE_SPLIT_ANGLE(-2.29675459861755), + SCALE_SPLIT_ANGLE(-2.30169844627380), + SCALE_SPLIT_ANGLE(-2.30503511428833)}, + {SCALE_SPLIT_ANGLE(-2.25191521644592), + SCALE_SPLIT_ANGLE(-2.25312590599060), + SCALE_SPLIT_ANGLE(-2.25494933128357), + SCALE_SPLIT_ANGLE(-2.25943517684937), + SCALE_SPLIT_ANGLE(-2.26368904113770), + SCALE_SPLIT_ANGLE(-2.27023124694824), + SCALE_SPLIT_ANGLE(-2.28044486045837), + SCALE_SPLIT_ANGLE(-2.28732323646545)}, + {SCALE_SPLIT_ANGLE(-2.19093608856201), + SCALE_SPLIT_ANGLE(-2.19366121292114), + SCALE_SPLIT_ANGLE(-2.19773292541504), + SCALE_SPLIT_ANGLE(-2.20759749412537), + SCALE_SPLIT_ANGLE(-2.21677803993225), + SCALE_SPLIT_ANGLE(-2.23064494132996), + SCALE_SPLIT_ANGLE(-2.25193929672241), + SCALE_SPLIT_ANGLE(-2.26625943183899)}, + {SCALE_SPLIT_ANGLE(-2.08102917671204), + SCALE_SPLIT_ANGLE(-2.08757305145264), + SCALE_SPLIT_ANGLE(-2.09720730781555), + SCALE_SPLIT_ANGLE(-2.11991167068481), + SCALE_SPLIT_ANGLE(-2.14035677909851), + SCALE_SPLIT_ANGLE(-2.17029237747192), + SCALE_SPLIT_ANGLE(-2.21503162384033), + SCALE_SPLIT_ANGLE(-2.24518132209778)}, + {SCALE_SPLIT_ANGLE(-1.86738622188568), + SCALE_SPLIT_ANGLE(-1.88426077365875), + SCALE_SPLIT_ANGLE(-1.90853285789490), + SCALE_SPLIT_ANGLE(-1.96333336830139), + SCALE_SPLIT_ANGLE(-2.01024460792542), + SCALE_SPLIT_ANGLE(-2.07577633857727), + SCALE_SPLIT_ANGLE(-2.16986608505249), + SCALE_SPLIT_ANGLE(-2.23406052589417)}, + {SCALE_SPLIT_ANGLE(-1.61812186241150), + SCALE_SPLIT_ANGLE(-1.64943766593933), + SCALE_SPLIT_ANGLE(-1.69389247894287), + SCALE_SPLIT_ANGLE(-1.79176032543182), + SCALE_SPLIT_ANGLE(-1.87292504310608), + SCALE_SPLIT_ANGLE(-1.98277997970581), + SCALE_SPLIT_ANGLE(-2.13605833053589), + SCALE_SPLIT_ANGLE(-2.24282979965210)}, + {SCALE_SPLIT_ANGLE(-1.26556181907654), + SCALE_SPLIT_ANGLE(-1.31512010097504), + SCALE_SPLIT_ANGLE(-1.38608694076538), + SCALE_SPLIT_ANGLE(-1.54419946670532), + SCALE_SPLIT_ANGLE(-1.67621028423309), + SCALE_SPLIT_ANGLE(-1.85417354106903), + SCALE_SPLIT_ANGLE(-2.09956336021423), + SCALE_SPLIT_ANGLE(-2.27729439735413)}, + {SCALE_SPLIT_ANGLE(-0.88984858989716), + SCALE_SPLIT_ANGLE(-0.94673115015030), + SCALE_SPLIT_ANGLE(-1.03102219104767), + SCALE_SPLIT_ANGLE(-1.23219704627991), + SCALE_SPLIT_ANGLE(-1.41468596458435), + SCALE_SPLIT_ANGLE(-1.67807447910309), + SCALE_SPLIT_ANGLE(-2.05749273300171), + SCALE_SPLIT_ANGLE(-2.35138511657715)}, + {SCALE_SPLIT_ANGLE(-0.60630625486374), + SCALE_SPLIT_ANGLE(-0.65551131963730), + SCALE_SPLIT_ANGLE(-0.73032110929489), + SCALE_SPLIT_ANGLE(-0.92225730419159), + SCALE_SPLIT_ANGLE(-1.11866605281830), + SCALE_SPLIT_ANGLE(-1.44806659221649), + SCALE_SPLIT_ANGLE(-1.99872648715973), + SCALE_SPLIT_ANGLE(-2.47302079200745)}, + {SCALE_SPLIT_ANGLE(-0.43393719196320), + SCALE_SPLIT_ANGLE(-0.47099208831787), + SCALE_SPLIT_ANGLE(-0.52780753374100), + SCALE_SPLIT_ANGLE(-0.67895972728729), + SCALE_SPLIT_ANGLE(-0.84712409973145), + SCALE_SPLIT_ANGLE(-1.17809724807739), + SCALE_SPLIT_ANGLE(-1.89703977108002), + SCALE_SPLIT_ANGLE(-2.59155678749084)}, + {SCALE_SPLIT_ANGLE(-0.33522716164589), + SCALE_SPLIT_ANGLE(-0.36133098602295), + SCALE_SPLIT_ANGLE(-0.40159514546394), + SCALE_SPLIT_ANGLE(-0.51039946079254), + SCALE_SPLIT_ANGLE(-0.63590413331985), + SCALE_SPLIT_ANGLE(-0.90812796354294), + SCALE_SPLIT_ANGLE(-1.70793569087982), + SCALE_SPLIT_ANGLE(-2.52852439880371)}, + {SCALE_SPLIT_ANGLE(-0.27478921413422), + SCALE_SPLIT_ANGLE(-0.29251146316528), + SCALE_SPLIT_ANGLE(-0.32007753849030), + SCALE_SPLIT_ANGLE(-0.39531296491623), + SCALE_SPLIT_ANGLE(-0.48291319608688), + SCALE_SPLIT_ANGLE(-0.67812001705170), + SCALE_SPLIT_ANGLE(-1.39007341861725), + SCALE_SPLIT_ANGLE(-2.34402585029602)}, + {SCALE_SPLIT_ANGLE(-0.23185737431049), + SCALE_SPLIT_ANGLE(-0.24370788037777), + SCALE_SPLIT_ANGLE(-0.26227977871895), + SCALE_SPLIT_ANGLE(-0.31327378749847), + SCALE_SPLIT_ANGLE(-0.37241828441620), + SCALE_SPLIT_ANGLE(-0.50202107429504), + SCALE_SPLIT_ANGLE(-0.99085599184036), + SCALE_SPLIT_ANGLE(-1.96553480625153)}, + {SCALE_SPLIT_ANGLE(-0.19698302447796), + SCALE_SPLIT_ANGLE(-0.20488265156746), + SCALE_SPLIT_ANGLE(-0.21731522679329), + SCALE_SPLIT_ANGLE(-0.25148209929466), + SCALE_SPLIT_ANGLE(-0.29065513610840), + SCALE_SPLIT_ANGLE(-0.37341463565826), + SCALE_SPLIT_ANGLE(-0.65295964479446), + SCALE_SPLIT_ANGLE(-1.28865838050842)}, + {SCALE_SPLIT_ANGLE(-0.16667704284191), + SCALE_SPLIT_ANGLE(-0.17194209992886), + SCALE_SPLIT_ANGLE(-0.18023575842381), + SCALE_SPLIT_ANGLE(-0.20293866097927), + SCALE_SPLIT_ANGLE(-0.22855132818222), + SCALE_SPLIT_ANGLE(-0.28041815757751), + SCALE_SPLIT_ANGLE(-0.43142417073250), + SCALE_SPLIT_ANGLE(-0.70030152797699)}, + {SCALE_SPLIT_ANGLE(-0.12773875892162), + SCALE_SPLIT_ANGLE(-0.13059368729591), + SCALE_SPLIT_ANGLE(-0.13507817685604), + SCALE_SPLIT_ANGLE(-0.14721076190472), + SCALE_SPLIT_ANGLE(-0.16052411496639), + SCALE_SPLIT_ANGLE(-0.18590225279331), + SCALE_SPLIT_ANGLE(-0.24703903496265), + SCALE_SPLIT_ANGLE(-0.32153329253197)}, + {SCALE_SPLIT_ANGLE(-0.09603262692690), + SCALE_SPLIT_ANGLE(-0.09756571799517), + SCALE_SPLIT_ANGLE(-0.09996144473553), + SCALE_SPLIT_ANGLE(-0.10635072737932), + SCALE_SPLIT_ANGLE(-0.11317525804043), + SCALE_SPLIT_ANGLE(-0.12554959952831), + SCALE_SPLIT_ANGLE(-0.15168417990208), + SCALE_SPLIT_ANGLE(-0.17713625729084)}, + {SCALE_SPLIT_ANGLE(-0.07104730606079), + SCALE_SPLIT_ANGLE(-0.07186015695333), + SCALE_SPLIT_ANGLE(-0.07312334328890), + SCALE_SPLIT_ANGLE(-0.07644615322351), + SCALE_SPLIT_ANGLE(-0.07991369068623), + SCALE_SPLIT_ANGLE(-0.08596337586641), + SCALE_SPLIT_ANGLE(-0.09766443073750), + SCALE_SPLIT_ANGLE(-0.10767272859812)}, + {SCALE_SPLIT_ANGLE(-0.05192205309868), + SCALE_SPLIT_ANGLE(-0.05234766378999), + SCALE_SPLIT_ANGLE(-0.05300575867295), + SCALE_SPLIT_ANGLE(-0.05471667274833), + SCALE_SPLIT_ANGLE(-0.05646898224950), + SCALE_SPLIT_ANGLE(-0.05943990871310), + SCALE_SPLIT_ANGLE(-0.06485753506422), + SCALE_SPLIT_ANGLE(-0.06914159655571)}, + {SCALE_SPLIT_ANGLE(-0.03760398924351), + SCALE_SPLIT_ANGLE(-0.03782445192337), + SCALE_SPLIT_ANGLE(-0.03816392645240), + SCALE_SPLIT_ANGLE(-0.03903824090958), + SCALE_SPLIT_ANGLE(-0.03992090001702), + SCALE_SPLIT_ANGLE(-0.04138650000095), + SCALE_SPLIT_ANGLE(-0.04395476356149), + SCALE_SPLIT_ANGLE(-0.04588782414794)}, + {SCALE_SPLIT_ANGLE(-0.02166714519262), + SCALE_SPLIT_ANGLE(-0.02173947915435), + SCALE_SPLIT_ANGLE(-0.02185030654073), + SCALE_SPLIT_ANGLE(-0.02213260345161), + SCALE_SPLIT_ANGLE(-0.02241297997534), + SCALE_SPLIT_ANGLE(-0.02286812663078), + SCALE_SPLIT_ANGLE(-0.02363408729434), + SCALE_SPLIT_ANGLE(-0.02418405003846)}, + {SCALE_SPLIT_ANGLE(-0.01235313713551), + SCALE_SPLIT_ANGLE(-0.01237650867552), + SCALE_SPLIT_ANGLE(-0.01241220720112), + SCALE_SPLIT_ANGLE(-0.01250253617764), + SCALE_SPLIT_ANGLE(-0.01259138714522), + SCALE_SPLIT_ANGLE(-0.01273377239704), + SCALE_SPLIT_ANGLE(-0.01296819653362), + SCALE_SPLIT_ANGLE(-0.01313247904181)}, + {SCALE_SPLIT_ANGLE(-0.00700078438967), + SCALE_SPLIT_ANGLE(-0.00700826710090), + SCALE_SPLIT_ANGLE(-0.00701967626810), + SCALE_SPLIT_ANGLE(-0.00704843178391), + SCALE_SPLIT_ANGLE(-0.00707655726001), + SCALE_SPLIT_ANGLE(-0.00712130265310), + SCALE_SPLIT_ANGLE(-0.00719408923760), + SCALE_SPLIT_ANGLE(-0.00724443932995)}, + {SCALE_SPLIT_ANGLE(-0.00395406875759), + SCALE_SPLIT_ANGLE(-0.00395645154640), + SCALE_SPLIT_ANGLE(-0.00396008091047), + SCALE_SPLIT_ANGLE(-0.00396920833737), + SCALE_SPLIT_ANGLE(-0.00397810759023), + SCALE_SPLIT_ANGLE(-0.00399220641702), + SCALE_SPLIT_ANGLE(-0.00401498842984), + SCALE_SPLIT_ANGLE(-0.00403063651174)}, + {SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068)}, + }, + { + {SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518), + SCALE_SPLIT_ANGLE(-1.96349549293518)}, + {SCALE_SPLIT_ANGLE(-1.95824849605560), + SCALE_SPLIT_ANGLE(-1.95825111865997), + SCALE_SPLIT_ANGLE(-1.95825493335724), + SCALE_SPLIT_ANGLE(-1.95826470851898), + SCALE_SPLIT_ANGLE(-1.95827412605286), + SCALE_SPLIT_ANGLE(-1.95828902721405), + SCALE_SPLIT_ANGLE(-1.95831298828125), + SCALE_SPLIT_ANGLE(-1.95832931995392)}, + {SCALE_SPLIT_ANGLE(-1.95409321784973), + SCALE_SPLIT_ANGLE(-1.95410120487213), + SCALE_SPLIT_ANGLE(-1.95411348342896), + SCALE_SPLIT_ANGLE(-1.95414435863495), + SCALE_SPLIT_ANGLE(-1.95417428016663), + SCALE_SPLIT_ANGLE(-1.95422148704529), + SCALE_SPLIT_ANGLE(-1.95429742336273), + SCALE_SPLIT_ANGLE(-1.95434927940369)}, + {SCALE_SPLIT_ANGLE(-1.94654786586761), + SCALE_SPLIT_ANGLE(-1.94657349586487), + SCALE_SPLIT_ANGLE(-1.94661235809326), + SCALE_SPLIT_ANGLE(-1.94671010971069), + SCALE_SPLIT_ANGLE(-1.94680511951447), + SCALE_SPLIT_ANGLE(-1.94695532321930), + SCALE_SPLIT_ANGLE(-1.94719707965851), + SCALE_SPLIT_ANGLE(-1.94736242294312)}, + {SCALE_SPLIT_ANGLE(-1.93263387680054), + SCALE_SPLIT_ANGLE(-1.93271505832672), + SCALE_SPLIT_ANGLE(-1.93283867835999), + SCALE_SPLIT_ANGLE(-1.93314921855927), + SCALE_SPLIT_ANGLE(-1.93345177173615), + SCALE_SPLIT_ANGLE(-1.93393063545227), + SCALE_SPLIT_ANGLE(-1.93470406532288), + SCALE_SPLIT_ANGLE(-1.93523526191711)}, + {SCALE_SPLIT_ANGLE(-1.90630447864532), + SCALE_SPLIT_ANGLE(-1.90656316280365), + SCALE_SPLIT_ANGLE(-1.90695703029633), + SCALE_SPLIT_ANGLE(-1.90794789791107), + SCALE_SPLIT_ANGLE(-1.90891468524933), + SCALE_SPLIT_ANGLE(-1.91044914722443), + SCALE_SPLIT_ANGLE(-1.91294133663177), + SCALE_SPLIT_ANGLE(-1.91466677188873)}, + {SCALE_SPLIT_ANGLE(-1.87960767745972), + SCALE_SPLIT_ANGLE(-1.88012754917145), + SCALE_SPLIT_ANGLE(-1.88091945648193), + SCALE_SPLIT_ANGLE(-1.88291203975677), + SCALE_SPLIT_ANGLE(-1.88485789299011), + SCALE_SPLIT_ANGLE(-1.88795256614685), + SCALE_SPLIT_ANGLE(-1.89300417900085), + SCALE_SPLIT_ANGLE(-1.89653015136719)}, + {SCALE_SPLIT_ANGLE(-1.83877408504486), + SCALE_SPLIT_ANGLE(-1.83982253074646), + SCALE_SPLIT_ANGLE(-1.84141874313354), + SCALE_SPLIT_ANGLE(-1.84543371200562), + SCALE_SPLIT_ANGLE(-1.84935557842255), + SCALE_SPLIT_ANGLE(-1.85560452938080), + SCALE_SPLIT_ANGLE(-1.86587750911713), + SCALE_SPLIT_ANGLE(-1.87314093112946)}, + {SCALE_SPLIT_ANGLE(-1.77493441104889), + SCALE_SPLIT_ANGLE(-1.77705287933350), + SCALE_SPLIT_ANGLE(-1.78027486801147), + SCALE_SPLIT_ANGLE(-1.78836560249329), + SCALE_SPLIT_ANGLE(-1.79626119136810), + SCALE_SPLIT_ANGLE(-1.80886065959930), + SCALE_SPLIT_ANGLE(-1.82978057861328), + SCALE_SPLIT_ANGLE(-1.84489572048187)}, + {SCALE_SPLIT_ANGLE(-1.67321836948395), + SCALE_SPLIT_ANGLE(-1.67747676372528), + SCALE_SPLIT_ANGLE(-1.68394041061401), + SCALE_SPLIT_ANGLE(-1.70011758804321), + SCALE_SPLIT_ANGLE(-1.71586525440216), + SCALE_SPLIT_ANGLE(-1.74102890491486), + SCALE_SPLIT_ANGLE(-1.78345453739166), + SCALE_SPLIT_ANGLE(-1.81531310081482)}, + {SCALE_SPLIT_ANGLE(-1.51132130622864), + SCALE_SPLIT_ANGLE(-1.51959407329559), + SCALE_SPLIT_ANGLE(-1.53212583065033), + SCALE_SPLIT_ANGLE(-1.56339812278748), + SCALE_SPLIT_ANGLE(-1.59380078315735), + SCALE_SPLIT_ANGLE(-1.64260387420654), + SCALE_SPLIT_ANGLE(-1.72719144821167), + SCALE_SPLIT_ANGLE(-1.79549288749695)}, + {SCALE_SPLIT_ANGLE(-1.35904073715210), + SCALE_SPLIT_ANGLE(-1.37121629714966), + SCALE_SPLIT_ANGLE(-1.38967263698578), + SCALE_SPLIT_ANGLE(-1.43583405017853), + SCALE_SPLIT_ANGLE(-1.48093712329865), + SCALE_SPLIT_ANGLE(-1.55410349369049), + SCALE_SPLIT_ANGLE(-1.68521809577942), + SCALE_SPLIT_ANGLE(-1.80024909973145)}, + {SCALE_SPLIT_ANGLE(-1.17258918285370), + SCALE_SPLIT_ANGLE(-1.18893885612488), + SCALE_SPLIT_ANGLE(-1.21383893489838), + SCALE_SPLIT_ANGLE(-1.27678334712982), + SCALE_SPLIT_ANGLE(-1.33930444717407), + SCALE_SPLIT_ANGLE(-1.44322550296783), + SCALE_SPLIT_ANGLE(-1.64006841182709), + SCALE_SPLIT_ANGLE(-1.83627629280090)}, + {SCALE_SPLIT_ANGLE(-0.96933782100677), + SCALE_SPLIT_ANGLE(-0.98854482173920), + SCALE_SPLIT_ANGLE(-1.01807177066803), + SCALE_SPLIT_ANGLE(-1.09429979324341), + SCALE_SPLIT_ANGLE(-1.17245376110077), + SCALE_SPLIT_ANGLE(-1.30826890468597), + SCALE_SPLIT_ANGLE(-1.58911192417145), + SCALE_SPLIT_ANGLE(-1.92719459533691)}, + {SCALE_SPLIT_ANGLE(-0.77729856967926), + SCALE_SPLIT_ANGLE(-0.79675692319870), + SCALE_SPLIT_ANGLE(-0.82701623439789), + SCALE_SPLIT_ANGLE(-0.90724974870682), + SCALE_SPLIT_ANGLE(-0.99302661418915), + SCALE_SPLIT_ANGLE(-1.15164005756378), + SCALE_SPLIT_ANGLE(-1.52265238761902), + SCALE_SPLIT_ANGLE(-2.09869647026062)}, + {SCALE_SPLIT_ANGLE(-0.61765122413635), + SCALE_SPLIT_ANGLE(-0.63503879308701), + SCALE_SPLIT_ANGLE(-0.66235071420670), + SCALE_SPLIT_ANGLE(-0.73653644323349), + SCALE_SPLIT_ANGLE(-0.81904625892639), + SCALE_SPLIT_ANGLE(-0.98174780607224), + SCALE_SPLIT_ANGLE(-1.42110574245453), + SCALE_SPLIT_ANGLE(-2.28386068344116)}, + {SCALE_SPLIT_ANGLE(-0.49486327171326), + SCALE_SPLIT_ANGLE(-0.50909572839737), + SCALE_SPLIT_ANGLE(-0.53160977363586), + SCALE_SPLIT_ANGLE(-0.59379214048386), + SCALE_SPLIT_ANGLE(-0.66487479209900), + SCALE_SPLIT_ANGLE(-0.81185555458069), + SCALE_SPLIT_ANGLE(-1.26233398914337), + SCALE_SPLIT_ANGLE(-2.16925764083862)}, + {SCALE_SPLIT_ANGLE(-0.40230554342270), + SCALE_SPLIT_ANGLE(-0.41332268714905), + SCALE_SPLIT_ANGLE(-0.43082219362259), + SCALE_SPLIT_ANGLE(-0.47957947850227), + SCALE_SPLIT_ANGLE(-0.53603595495224), + SCALE_SPLIT_ANGLE(-0.65522664785385), + SCALE_SPLIT_ANGLE(-1.04503870010376), + SCALE_SPLIT_ANGLE(-1.87041819095612)}, + {SCALE_SPLIT_ANGLE(-0.33104604482651), + SCALE_SPLIT_ANGLE(-0.33927723765373), + SCALE_SPLIT_ANGLE(-0.35237133502960), + SCALE_SPLIT_ANGLE(-0.38892474770546), + SCALE_SPLIT_ANGLE(-0.43126162886620), + SCALE_SPLIT_ANGLE(-0.52027010917664), + SCALE_SPLIT_ANGLE(-0.80654197931290), + SCALE_SPLIT_ANGLE(-1.41960346698761)}, + {SCALE_SPLIT_ANGLE(-0.27415531873703), + SCALE_SPLIT_ANGLE(-0.28015667200089), + SCALE_SPLIT_ANGLE(-0.28969678282738), + SCALE_SPLIT_ANGLE(-0.31623727083206), + SCALE_SPLIT_ANGLE(-0.34670370817184), + SCALE_SPLIT_ANGLE(-0.40939208865166), + SCALE_SPLIT_ANGLE(-0.59604328870773), + SCALE_SPLIT_ANGLE(-0.94309812784195)}, + {SCALE_SPLIT_ANGLE(-0.22730343043804), + SCALE_SPLIT_ANGLE(-0.23159568011761), + SCALE_SPLIT_ANGLE(-0.23840220272541), + SCALE_SPLIT_ANGLE(-0.25720024108887), + SCALE_SPLIT_ANGLE(-0.27846288681030), + SCALE_SPLIT_ANGLE(-0.32089167833328), + SCALE_SPLIT_ANGLE(-0.43515858054161), + SCALE_SPLIT_ANGLE(-0.60622000694275)}, + {SCALE_SPLIT_ANGLE(-0.17074464261532), + SCALE_SPLIT_ANGLE(-0.17326098680496), + SCALE_SPLIT_ANGLE(-0.17722851037979), + SCALE_SPLIT_ANGLE(-0.18802368640900), + SCALE_SPLIT_ANGLE(-0.19990929961205), + SCALE_SPLIT_ANGLE(-0.22246663272381), + SCALE_SPLIT_ANGLE(-0.27514943480492), + SCALE_SPLIT_ANGLE(-0.33505329489708)}, + {SCALE_SPLIT_ANGLE(-0.12695816159248), + SCALE_SPLIT_ANGLE(-0.12838459014893), + SCALE_SPLIT_ANGLE(-0.13061878085136), + SCALE_SPLIT_ANGLE(-0.13660037517548), + SCALE_SPLIT_ANGLE(-0.14301039278507), + SCALE_SPLIT_ANGLE(-0.15463486313820), + SCALE_SPLIT_ANGLE(-0.17893928289413), + SCALE_SPLIT_ANGLE(-0.20203559100628)}, + {SCALE_SPLIT_ANGLE(-0.09338590502739), + SCALE_SPLIT_ANGLE(-0.09417138248682), + SCALE_SPLIT_ANGLE(-0.09539389610291), + SCALE_SPLIT_ANGLE(-0.09861853718758), + SCALE_SPLIT_ANGLE(-0.10199318081141), + SCALE_SPLIT_ANGLE(-0.10789106041193), + SCALE_SPLIT_ANGLE(-0.11927829682827), + SCALE_SPLIT_ANGLE(-0.12894384562969)}, + {SCALE_SPLIT_ANGLE(-0.06804534792900), + SCALE_SPLIT_ANGLE(-0.06846774369478), + SCALE_SPLIT_ANGLE(-0.06912153959274), + SCALE_SPLIT_ANGLE(-0.07082460820675), + SCALE_SPLIT_ANGLE(-0.07257289439440), + SCALE_SPLIT_ANGLE(-0.07554303109646), + SCALE_SPLIT_ANGLE(-0.08096560835838), + SCALE_SPLIT_ANGLE(-0.08524779230356)}, + {SCALE_SPLIT_ANGLE(-0.04920703917742), + SCALE_SPLIT_ANGLE(-0.04942998290062), + SCALE_SPLIT_ANGLE(-0.04977353662252), + SCALE_SPLIT_ANGLE(-0.05065960064530), + SCALE_SPLIT_ANGLE(-0.05155571177602), + SCALE_SPLIT_ANGLE(-0.05304637178779), + SCALE_SPLIT_ANGLE(-0.05566369369626), + SCALE_SPLIT_ANGLE(-0.05763531103730)}, + {SCALE_SPLIT_ANGLE(-0.02832321636379), + SCALE_SPLIT_ANGLE(-0.02839783579111), + SCALE_SPLIT_ANGLE(-0.02851220592856), + SCALE_SPLIT_ANGLE(-0.02880378812551), + SCALE_SPLIT_ANGLE(-0.02909369207919), + SCALE_SPLIT_ANGLE(-0.02956490218639), + SCALE_SPLIT_ANGLE(-0.03035926632583), + SCALE_SPLIT_ANGLE(-0.03093044646084)}, + {SCALE_SPLIT_ANGLE(-0.01614263094962), + SCALE_SPLIT_ANGLE(-0.01616701111197), + SCALE_SPLIT_ANGLE(-0.01620426028967), + SCALE_SPLIT_ANGLE(-0.01629855856299), + SCALE_SPLIT_ANGLE(-0.01639137044549), + SCALE_SPLIT_ANGLE(-0.01654022000730), + SCALE_SPLIT_ANGLE(-0.01678557321429), + SCALE_SPLIT_ANGLE(-0.01695770025253)}, + {SCALE_SPLIT_ANGLE(-0.00914741121233), + SCALE_SPLIT_ANGLE(-0.00915526598692), + SCALE_SPLIT_ANGLE(-0.00916724465787), + SCALE_SPLIT_ANGLE(-0.00919744279236), + SCALE_SPLIT_ANGLE(-0.00922699086368), + SCALE_SPLIT_ANGLE(-0.00927401985973), + SCALE_SPLIT_ANGLE(-0.00935057457536), + SCALE_SPLIT_ANGLE(-0.00940357148647)}, + {SCALE_SPLIT_ANGLE(-0.00516631966457), + SCALE_SPLIT_ANGLE(-0.00516883004457), + SCALE_SPLIT_ANGLE(-0.00517265358940), + SCALE_SPLIT_ANGLE(-0.00518227042630), + SCALE_SPLIT_ANGLE(-0.00519164977595), + SCALE_SPLIT_ANGLE(-0.00520651368424), + SCALE_SPLIT_ANGLE(-0.00523054040968), + SCALE_SPLIT_ANGLE(-0.00524705089629)}, + {SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564), + SCALE_SPLIT_ANGLE(-0.00000002921564)}, + }, + { + {SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700), + SCALE_SPLIT_ANGLE(-1.57079625129700)}, + {SCALE_SPLIT_ANGLE(-1.56514143943787), + SCALE_SPLIT_ANGLE(-1.56514346599579), + SCALE_SPLIT_ANGLE(-1.56514644622803), + SCALE_SPLIT_ANGLE(-1.56515395641327), + SCALE_SPLIT_ANGLE(-1.56516134738922), + SCALE_SPLIT_ANGLE(-1.56517291069031), + SCALE_SPLIT_ANGLE(-1.56519162654877), + SCALE_SPLIT_ANGLE(-1.56520438194275)}, + {SCALE_SPLIT_ANGLE(-1.56069743633270), + SCALE_SPLIT_ANGLE(-1.56070363521576), + SCALE_SPLIT_ANGLE(-1.56071305274963), + SCALE_SPLIT_ANGLE(-1.56073689460754), + SCALE_SPLIT_ANGLE(-1.56076002120972), + SCALE_SPLIT_ANGLE(-1.56079661846161), + SCALE_SPLIT_ANGLE(-1.56085574626923), + SCALE_SPLIT_ANGLE(-1.56089639663696)}, + {SCALE_SPLIT_ANGLE(-1.55270349979401), + SCALE_SPLIT_ANGLE(-1.55272293090820), + SCALE_SPLIT_ANGLE(-1.55275249481201), + SCALE_SPLIT_ANGLE(-1.55282700061798), + SCALE_SPLIT_ANGLE(-1.55289971828461), + SCALE_SPLIT_ANGLE(-1.55301535129547), + SCALE_SPLIT_ANGLE(-1.55320298671722), + SCALE_SPLIT_ANGLE(-1.55333244800568)}, + {SCALE_SPLIT_ANGLE(-1.53820896148682), + SCALE_SPLIT_ANGLE(-1.53826904296875), + SCALE_SPLIT_ANGLE(-1.53836083412170), + SCALE_SPLIT_ANGLE(-1.53859269618988), + SCALE_SPLIT_ANGLE(-1.53882038593292), + SCALE_SPLIT_ANGLE(-1.53918409347534), + SCALE_SPLIT_ANGLE(-1.53978025913239), + SCALE_SPLIT_ANGLE(-1.54019618034363)}, + {SCALE_SPLIT_ANGLE(-1.51160359382629), + SCALE_SPLIT_ANGLE(-1.51178681850433), + SCALE_SPLIT_ANGLE(-1.51206707954407), + SCALE_SPLIT_ANGLE(-1.51277911663055), + SCALE_SPLIT_ANGLE(-1.51348364353180), + SCALE_SPLIT_ANGLE(-1.51462137699127), + SCALE_SPLIT_ANGLE(-1.51652014255524), + SCALE_SPLIT_ANGLE(-1.51787149906158)}, + {SCALE_SPLIT_ANGLE(-1.48564028739929), + SCALE_SPLIT_ANGLE(-1.48599267005920), + SCALE_SPLIT_ANGLE(-1.48653328418732), + SCALE_SPLIT_ANGLE(-1.48791313171387), + SCALE_SPLIT_ANGLE(-1.48928785324097), + SCALE_SPLIT_ANGLE(-1.49152994155884), + SCALE_SPLIT_ANGLE(-1.49533629417419), + SCALE_SPLIT_ANGLE(-1.49810016155243)}, + {SCALE_SPLIT_ANGLE(-1.44770431518555), + SCALE_SPLIT_ANGLE(-1.44837117195129), + SCALE_SPLIT_ANGLE(-1.44939672946930), + SCALE_SPLIT_ANGLE(-1.45203149318695), + SCALE_SPLIT_ANGLE(-1.45468175411224), + SCALE_SPLIT_ANGLE(-1.45906174182892), + SCALE_SPLIT_ANGLE(-1.46668362617493), + SCALE_SPLIT_ANGLE(-1.47238755226135)}, + {SCALE_SPLIT_ANGLE(-1.39214622974396), + SCALE_SPLIT_ANGLE(-1.39337480068207), + SCALE_SPLIT_ANGLE(-1.39527142047882), + SCALE_SPLIT_ANGLE(-1.40018463134766), + SCALE_SPLIT_ANGLE(-1.40518975257874), + SCALE_SPLIT_ANGLE(-1.41361439228058), + SCALE_SPLIT_ANGLE(-1.42880713939667), + SCALE_SPLIT_ANGLE(-1.44072234630585)}, + {SCALE_SPLIT_ANGLE(-1.31133687496185), + SCALE_SPLIT_ANGLE(-1.31350564956665), + SCALE_SPLIT_ANGLE(-1.31686961650848), + SCALE_SPLIT_ANGLE(-1.32567894458771), + SCALE_SPLIT_ANGLE(-1.33480489253998), + SCALE_SPLIT_ANGLE(-1.35055565834045), + SCALE_SPLIT_ANGLE(-1.38048458099365), + SCALE_SPLIT_ANGLE(-1.40579903125763)}, + {SCALE_SPLIT_ANGLE(-1.19695889949799), + SCALE_SPLIT_ANGLE(-1.20052516460419), + SCALE_SPLIT_ANGLE(-1.20609176158905), + SCALE_SPLIT_ANGLE(-1.22087824344635), + SCALE_SPLIT_ANGLE(-1.23654139041901), + SCALE_SPLIT_ANGLE(-1.26451897621155), + SCALE_SPLIT_ANGLE(-1.32194638252258), + SCALE_SPLIT_ANGLE(-1.37709844112396)}, + {SCALE_SPLIT_ANGLE(-1.09969496726990), + SCALE_SPLIT_ANGLE(-1.10437369346619), + SCALE_SPLIT_ANGLE(-1.11171460151672), + SCALE_SPLIT_ANGLE(-1.13144767284393), + SCALE_SPLIT_ANGLE(-1.15274536609650), + SCALE_SPLIT_ANGLE(-1.19192278385162), + SCALE_SPLIT_ANGLE(-1.27820122241974), + SCALE_SPLIT_ANGLE(-1.37287354469299)}, + {SCALE_SPLIT_ANGLE(-0.98739635944366), + SCALE_SPLIT_ANGLE(-0.99314498901367), + SCALE_SPLIT_ANGLE(-1.00221848487854), + SCALE_SPLIT_ANGLE(-1.02694928646088), + SCALE_SPLIT_ANGLE(-1.05423069000244), + SCALE_SPLIT_ANGLE(-1.10619938373566), + SCALE_SPLIT_ANGLE(-1.23116791248322), + SCALE_SPLIT_ANGLE(-1.39771783351898)}, + {SCALE_SPLIT_ANGLE(-0.86566168069839), + SCALE_SPLIT_ANGLE(-0.87219274044037), + SCALE_SPLIT_ANGLE(-0.88256770372391), + SCALE_SPLIT_ANGLE(-0.91127198934555), + SCALE_SPLIT_ANGLE(-0.94370102882385), + SCALE_SPLIT_ANGLE(-1.00792455673218), + SCALE_SPLIT_ANGLE(-1.17914199829102), + SCALE_SPLIT_ANGLE(-1.48121190071106)}, + {SCALE_SPLIT_ANGLE(-0.74293029308319), + SCALE_SPLIT_ANGLE(-0.74975663423538), + SCALE_SPLIT_ANGLE(-0.76066619157791), + SCALE_SPLIT_ANGLE(-0.79128366708755), + SCALE_SPLIT_ANGLE(-0.82667875289917), + SCALE_SPLIT_ANGLE(-0.89952337741852), + SCALE_SPLIT_ANGLE(-1.11571288108826), + SCALE_SPLIT_ANGLE(-1.67431199550629)}, + {SCALE_SPLIT_ANGLE(-0.62761706113815), + SCALE_SPLIT_ANGLE(-0.63421267271042), + SCALE_SPLIT_ANGLE(-0.64480352401733), + SCALE_SPLIT_ANGLE(-0.67486244440079), + SCALE_SPLIT_ANGLE(-0.71025305986404), + SCALE_SPLIT_ANGLE(-0.78539818525314), + SCALE_SPLIT_ANGLE(-1.02937340736389), + SCALE_SPLIT_ANGLE(-1.92301476001740)}, + {SCALE_SPLIT_ANGLE(-0.52522456645966), + SCALE_SPLIT_ANGLE(-0.53118568658829), + SCALE_SPLIT_ANGLE(-0.54078328609467), + SCALE_SPLIT_ANGLE(-0.56819742918015), + SCALE_SPLIT_ANGLE(-0.60080897808075), + SCALE_SPLIT_ANGLE(-0.67127293348312), + SCALE_SPLIT_ANGLE(-0.91114157438278), + SCALE_SPLIT_ANGLE(-1.73398244380951)}, + {SCALE_SPLIT_ANGLE(-0.43751952052116), + SCALE_SPLIT_ANGLE(-0.44262495636940), + SCALE_SPLIT_ANGLE(-0.45084837079048), + SCALE_SPLIT_ANGLE(-0.47435706853867), + SCALE_SPLIT_ANGLE(-0.50235128402710), + SCALE_SPLIT_ANGLE(-0.56287175416946), + SCALE_SPLIT_ANGLE(-0.76705116033554), + SCALE_SPLIT_ANGLE(-1.34888231754303)}, + {SCALE_SPLIT_ANGLE(-0.36364197731018), + SCALE_SPLIT_ANGLE(-0.36782836914063), + SCALE_SPLIT_ANGLE(-0.37456014752388), + SCALE_SPLIT_ANGLE(-0.39372298121452), + SCALE_SPLIT_ANGLE(-0.41636970639229), + SCALE_SPLIT_ANGLE(-0.46459695696831), + SCALE_SPLIT_ANGLE(-0.61803078651428), + SCALE_SPLIT_ANGLE(-0.96275907754898)}, + {SCALE_SPLIT_ANGLE(-0.30166232585907), + SCALE_SPLIT_ANGLE(-0.30497136712074), + SCALE_SPLIT_ANGLE(-0.31027451157570), + SCALE_SPLIT_ANGLE(-0.32524627447128), + SCALE_SPLIT_ANGLE(-0.34269106388092), + SCALE_SPLIT_ANGLE(-0.37887355685234), + SCALE_SPLIT_ANGLE(-0.48432540893555), + SCALE_SPLIT_ANGLE(-0.66878592967987)}, + {SCALE_SPLIT_ANGLE(-0.24960109591484), + SCALE_SPLIT_ANGLE(-0.25213342905045), + SCALE_SPLIT_ANGLE(-0.25617361068726), + SCALE_SPLIT_ANGLE(-0.26745575666428), + SCALE_SPLIT_ANGLE(-0.28036275506020), + SCALE_SPLIT_ANGLE(-0.30627736449242), + SCALE_SPLIT_ANGLE(-0.37490698695183), + SCALE_SPLIT_ANGLE(-0.47145301103592)}, + {SCALE_SPLIT_ANGLE(-0.18661488592625), + SCALE_SPLIT_ANGLE(-0.18822199106216), + SCALE_SPLIT_ANGLE(-0.19076594710350), + SCALE_SPLIT_ANGLE(-0.19773861765862), + SCALE_SPLIT_ANGLE(-0.20547652244568), + SCALE_SPLIT_ANGLE(-0.22024063766003), + SCALE_SPLIT_ANGLE(-0.25452125072479), + SCALE_SPLIT_ANGLE(-0.29236793518066)}, + {SCALE_SPLIT_ANGLE(-0.13821771740913), + SCALE_SPLIT_ANGLE(-0.13918289542198), + SCALE_SPLIT_ANGLE(-0.14069861173630), + SCALE_SPLIT_ANGLE(-0.14477686583996), + SCALE_SPLIT_ANGLE(-0.14917232096195), + SCALE_SPLIT_ANGLE(-0.15718193352222), + SCALE_SPLIT_ANGLE(-0.17394064366817), + SCALE_SPLIT_ANGLE(-0.18971265852451)}, + {SCALE_SPLIT_ANGLE(-0.10140904784203), + SCALE_SPLIT_ANGLE(-0.10196315497160), + SCALE_SPLIT_ANGLE(-0.10282710194588), + SCALE_SPLIT_ANGLE(-0.10511382669210), + SCALE_SPLIT_ANGLE(-0.10751703381538), + SCALE_SPLIT_ANGLE(-0.11173453181982), + SCALE_SPLIT_ANGLE(-0.11990433931351), + SCALE_SPLIT_ANGLE(-0.12683042883873)}, + {SCALE_SPLIT_ANGLE(-0.07378087192774), + SCALE_SPLIT_ANGLE(-0.07408788800240), + SCALE_SPLIT_ANGLE(-0.07456368207932), + SCALE_SPLIT_ANGLE(-0.07580613344908), + SCALE_SPLIT_ANGLE(-0.07708552479744), + SCALE_SPLIT_ANGLE(-0.07926639169455), + SCALE_SPLIT_ANGLE(-0.08326309919357), + SCALE_SPLIT_ANGLE(-0.08642497658730)}, + {SCALE_SPLIT_ANGLE(-0.05331044271588), + SCALE_SPLIT_ANGLE(-0.05347600579262), + SCALE_SPLIT_ANGLE(-0.05373133346438), + SCALE_SPLIT_ANGLE(-0.05439101532102), + SCALE_SPLIT_ANGLE(-0.05505971238017), + SCALE_SPLIT_ANGLE(-0.05617496743798), + SCALE_SPLIT_ANGLE(-0.05813983827829), + SCALE_SPLIT_ANGLE(-0.05962376296520)}, + {SCALE_SPLIT_ANGLE(-0.03066622652113), + SCALE_SPLIT_ANGLE(-0.03072291985154), + SCALE_SPLIT_ANGLE(-0.03080986253917), + SCALE_SPLIT_ANGLE(-0.03103173524141), + SCALE_SPLIT_ANGLE(-0.03125262632966), + SCALE_SPLIT_ANGLE(-0.03161224350333), + SCALE_SPLIT_ANGLE(-0.03221990913153), + SCALE_SPLIT_ANGLE(-0.03265778720379)}, + {SCALE_SPLIT_ANGLE(-0.01747439615428), + SCALE_SPLIT_ANGLE(-0.01749316416681), + SCALE_SPLIT_ANGLE(-0.01752184517682), + SCALE_SPLIT_ANGLE(-0.01759449020028), + SCALE_SPLIT_ANGLE(-0.01766604930162), + SCALE_SPLIT_ANGLE(-0.01778092049062), + SCALE_SPLIT_ANGLE(-0.01797054335475), + SCALE_SPLIT_ANGLE(-0.01810375973582)}, + {SCALE_SPLIT_ANGLE(-0.00990140344948), + SCALE_SPLIT_ANGLE(-0.00990749336779), + SCALE_SPLIT_ANGLE(-0.00991678331047), + SCALE_SPLIT_ANGLE(-0.00994021166116), + SCALE_SPLIT_ANGLE(-0.00996314454824), + SCALE_SPLIT_ANGLE(-0.00999966636300), + SCALE_SPLIT_ANGLE(-0.01005917042494), + SCALE_SPLIT_ANGLE(-0.01010039448738)}, + {SCALE_SPLIT_ANGLE(-0.00559204118326), + SCALE_SPLIT_ANGLE(-0.00559399509802), + SCALE_SPLIT_ANGLE(-0.00559697346762), + SCALE_SPLIT_ANGLE(-0.00560446362942), + SCALE_SPLIT_ANGLE(-0.00561177125201), + SCALE_SPLIT_ANGLE(-0.00562335411087), + SCALE_SPLIT_ANGLE(-0.00564208766446), + SCALE_SPLIT_ANGLE(-0.00565496599302)}, + {SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278), + SCALE_SPLIT_ANGLE(-0.00000003162278)}, + }, + { + {SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881), + SCALE_SPLIT_ANGLE(-1.17809700965881)}, + {SCALE_SPLIT_ANGLE(-1.17289507389069), + SCALE_SPLIT_ANGLE(-1.17289614677429), + SCALE_SPLIT_ANGLE(-1.17289793491364), + SCALE_SPLIT_ANGLE(-1.17290210723877), + SCALE_SPLIT_ANGLE(-1.17290627956390), + SCALE_SPLIT_ANGLE(-1.17291295528412), + SCALE_SPLIT_ANGLE(-1.17292356491089), + SCALE_SPLIT_ANGLE(-1.17293083667755)}, + {SCALE_SPLIT_ANGLE(-1.16883778572083), + SCALE_SPLIT_ANGLE(-1.16884136199951), + SCALE_SPLIT_ANGLE(-1.16884660720825), + SCALE_SPLIT_ANGLE(-1.16885995864868), + SCALE_SPLIT_ANGLE(-1.16887307167053), + SCALE_SPLIT_ANGLE(-1.16889369487762), + SCALE_SPLIT_ANGLE(-1.16892731189728), + SCALE_SPLIT_ANGLE(-1.16895043849945)}, + {SCALE_SPLIT_ANGLE(-1.16160643100739), + SCALE_SPLIT_ANGLE(-1.16161715984344), + SCALE_SPLIT_ANGLE(-1.16163349151611), + SCALE_SPLIT_ANGLE(-1.16167497634888), + SCALE_SPLIT_ANGLE(-1.16171550750732), + SCALE_SPLIT_ANGLE(-1.16178035736084), + SCALE_SPLIT_ANGLE(-1.16188645362854), + SCALE_SPLIT_ANGLE(-1.16196036338806)}, + {SCALE_SPLIT_ANGLE(-1.14870381355286), + SCALE_SPLIT_ANGLE(-1.14873635768890), + SCALE_SPLIT_ANGLE(-1.14878606796265), + SCALE_SPLIT_ANGLE(-1.14891242980957), + SCALE_SPLIT_ANGLE(-1.14903736114502), + SCALE_SPLIT_ANGLE(-1.14923870563507), + SCALE_SPLIT_ANGLE(-1.14957380294800), + SCALE_SPLIT_ANGLE(-1.14981114864349)}, + {SCALE_SPLIT_ANGLE(-1.12567472457886), + SCALE_SPLIT_ANGLE(-1.12576985359192), + SCALE_SPLIT_ANGLE(-1.12591588497162), + SCALE_SPLIT_ANGLE(-1.12629044055939), + SCALE_SPLIT_ANGLE(-1.12666571140289), + SCALE_SPLIT_ANGLE(-1.12728178501129), + SCALE_SPLIT_ANGLE(-1.12833738327026), + SCALE_SPLIT_ANGLE(-1.12910985946655)}, + {SCALE_SPLIT_ANGLE(-1.10394370555878), + SCALE_SPLIT_ANGLE(-1.10411989688873), + SCALE_SPLIT_ANGLE(-1.10439169406891), + SCALE_SPLIT_ANGLE(-1.10509419441223), + SCALE_SPLIT_ANGLE(-1.10580670833588), + SCALE_SPLIT_ANGLE(-1.10699570178986), + SCALE_SPLIT_ANGLE(-1.10909187793732), + SCALE_SPLIT_ANGLE(-1.11067557334900)}, + {SCALE_SPLIT_ANGLE(-1.07335841655731), + SCALE_SPLIT_ANGLE(-1.07367491722107), + SCALE_SPLIT_ANGLE(-1.07416582107544), + SCALE_SPLIT_ANGLE(-1.07544875144959), + SCALE_SPLIT_ANGLE(-1.07677149772644), + SCALE_SPLIT_ANGLE(-1.07902920246124), + SCALE_SPLIT_ANGLE(-1.08317422866821), + SCALE_SPLIT_ANGLE(-1.08645880222321)}, + {SCALE_SPLIT_ANGLE(-1.03070914745331), + SCALE_SPLIT_ANGLE(-1.03125369548798), + SCALE_SPLIT_ANGLE(-1.03210353851318), + SCALE_SPLIT_ANGLE(-1.03435730934143), + SCALE_SPLIT_ANGLE(-1.03673195838928), + SCALE_SPLIT_ANGLE(-1.04091215133667), + SCALE_SPLIT_ANGLE(-1.04904508590698), + SCALE_SPLIT_ANGLE(-1.05597043037415)}, + {SCALE_SPLIT_ANGLE(-0.97233015298843), + SCALE_SPLIT_ANGLE(-0.97321158647537), + SCALE_SPLIT_ANGLE(-0.97459846735001), + SCALE_SPLIT_ANGLE(-0.97834426164627), + SCALE_SPLIT_ANGLE(-0.98240232467651), + SCALE_SPLIT_ANGLE(-0.98984342813492), + SCALE_SPLIT_ANGLE(-1.00556397438049), + SCALE_SPLIT_ANGLE(-1.02053022384644)}, + {SCALE_SPLIT_ANGLE(-0.89506632089615), + SCALE_SPLIT_ANGLE(-0.89638078212738), + SCALE_SPLIT_ANGLE(-0.89846837520599), + SCALE_SPLIT_ANGLE(-0.90423023700714), + SCALE_SPLIT_ANGLE(-0.91068559885025), + SCALE_SPLIT_ANGLE(-0.92315053939819), + SCALE_SPLIT_ANGLE(-0.95268231630325), + SCALE_SPLIT_ANGLE(-0.98626488447189)}, + {SCALE_SPLIT_ANGLE(-0.83257317543030), + SCALE_SPLIT_ANGLE(-0.83419388532639), + SCALE_SPLIT_ANGLE(-0.83678513765335), + SCALE_SPLIT_ANGLE(-0.84404873847961), + SCALE_SPLIT_ANGLE(-0.85238862037659), + SCALE_SPLIT_ANGLE(-0.86914104223251), + SCALE_SPLIT_ANGLE(-0.91285753250122), + SCALE_SPLIT_ANGLE(-0.97222834825516)}, + {SCALE_SPLIT_ANGLE(-0.76227325201035), + SCALE_SPLIT_ANGLE(-0.76417011022568), + SCALE_SPLIT_ANGLE(-0.76722222566605), + SCALE_SPLIT_ANGLE(-0.77590954303741), + SCALE_SPLIT_ANGLE(-0.78613209724426), + SCALE_SPLIT_ANGLE(-0.80752629041672), + SCALE_SPLIT_ANGLE(-0.86987817287445), + SCALE_SPLIT_ANGLE(-0.97863042354584)}, + {SCALE_SPLIT_ANGLE(-0.68631613254547), + SCALE_SPLIT_ANGLE(-0.68841677904129), + SCALE_SPLIT_ANGLE(-0.69181627035141), + SCALE_SPLIT_ANGLE(-0.70162516832352), + SCALE_SPLIT_ANGLE(-0.71342802047729), + SCALE_SPLIT_ANGLE(-0.73910319805145), + SCALE_SPLIT_ANGLE(-0.82307589054108), + SCALE_SPLIT_ANGLE(-1.03222990036011)}, + {SCALE_SPLIT_ANGLE(-0.60781323909760), + SCALE_SPLIT_ANGLE(-0.61001539230347), + SCALE_SPLIT_ANGLE(-0.61359477043152), + SCALE_SPLIT_ANGLE(-0.62403184175491), + SCALE_SPLIT_ANGLE(-0.63681107759476), + SCALE_SPLIT_ANGLE(-0.66548812389374), + SCALE_SPLIT_ANGLE(-0.76931124925613), + SCALE_SPLIT_ANGLE(-1.19638121128082)}, + {SCALE_SPLIT_ANGLE(-0.53021627664566), + SCALE_SPLIT_ANGLE(-0.53240883350372), + SCALE_SPLIT_ANGLE(-0.53598141670227), + SCALE_SPLIT_ANGLE(-0.54646164178848), + SCALE_SPLIT_ANGLE(-0.55942356586456), + SCALE_SPLIT_ANGLE(-0.58904850482941), + SCALE_SPLIT_ANGLE(-0.70326185226440), + SCALE_SPLIT_ANGLE(-1.46822547912598)}, + {SCALE_SPLIT_ANGLE(-0.45655792951584), + SCALE_SPLIT_ANGLE(-0.45864021778107), + SCALE_SPLIT_ANGLE(-0.46203425526619), + SCALE_SPLIT_ANGLE(-0.47199884057045), + SCALE_SPLIT_ANGLE(-0.48433950543404), + SCALE_SPLIT_ANGLE(-0.51260894536972), + SCALE_SPLIT_ANGLE(-0.62212854623795), + SCALE_SPLIT_ANGLE(-1.20720005035400)}, + {SCALE_SPLIT_ANGLE(-0.38893285393715), + SCALE_SPLIT_ANGLE(-0.39082619547844), + SCALE_SPLIT_ANGLE(-0.39390665292740), + SCALE_SPLIT_ANGLE(-0.40291139483452), + SCALE_SPLIT_ANGLE(-0.41398155689240), + SCALE_SPLIT_ANGLE(-0.43899381160736), + SCALE_SPLIT_ANGLE(-0.53091597557068), + SCALE_SPLIT_ANGLE(-0.85221308469772)}, + {SCALE_SPLIT_ANGLE(-0.32840180397034), + SCALE_SPLIT_ANGLE(-0.33005377650261), + SCALE_SPLIT_ANGLE(-0.33273178339005), + SCALE_SPLIT_ANGLE(-0.34049153327942), + SCALE_SPLIT_ANGLE(-0.34989196062088), + SCALE_SPLIT_ANGLE(-0.37057077884674), + SCALE_SPLIT_ANGLE(-0.43990370631218), + SCALE_SPLIT_ANGLE(-0.60593050718307)}, + {SCALE_SPLIT_ANGLE(-0.27521026134491), + SCALE_SPLIT_ANGLE(-0.27659529447556), + SCALE_SPLIT_ANGLE(-0.27882954478264), + SCALE_SPLIT_ANGLE(-0.28522571921349), + SCALE_SPLIT_ANGLE(-0.29282191395760), + SCALE_SPLIT_ANGLE(-0.30895599722862), + SCALE_SPLIT_ANGLE(-0.35752710700035), + SCALE_SPLIT_ANGLE(-0.44366964697838)}, + {SCALE_SPLIT_ANGLE(-0.22909800708294), + SCALE_SPLIT_ANGLE(-0.23021571338177), + SCALE_SPLIT_ANGLE(-0.23200808465481), + SCALE_SPLIT_ANGLE(-0.23706813156605), + SCALE_SPLIT_ANGLE(-0.24294249713421), + SCALE_SPLIT_ANGLE(-0.25494650006294), + SCALE_SPLIT_ANGLE(-0.28743270039558), + SCALE_SPLIT_ANGLE(-0.33326250314713)}, + {SCALE_SPLIT_ANGLE(-0.17204396426678), + SCALE_SPLIT_ANGLE(-0.17280194163322), + SCALE_SPLIT_ANGLE(-0.17400610446930), + SCALE_SPLIT_ANGLE(-0.17733126878738), + SCALE_SPLIT_ANGLE(-0.18105843663216), + SCALE_SPLIT_ANGLE(-0.18825362622738), + SCALE_SPLIT_ANGLE(-0.20519737899303), + SCALE_SPLIT_ANGLE(-0.22397245466709)}, + {SCALE_SPLIT_ANGLE(-0.12763081490994), + SCALE_SPLIT_ANGLE(-0.12810991704464), + SCALE_SPLIT_ANGLE(-0.12886415421963), + SCALE_SPLIT_ANGLE(-0.13090406358242), + SCALE_SPLIT_ANGLE(-0.13311786949635), + SCALE_SPLIT_ANGLE(-0.13718487322330), + SCALE_SPLIT_ANGLE(-0.14578334987164), + SCALE_SPLIT_ANGLE(-0.15392091870308)}, + {SCALE_SPLIT_ANGLE(-0.09368772059679), + SCALE_SPLIT_ANGLE(-0.09397349506617), + SCALE_SPLIT_ANGLE(-0.09441984444857), + SCALE_SPLIT_ANGLE(-0.09560552984476), + SCALE_SPLIT_ANGLE(-0.09685768932104), + SCALE_SPLIT_ANGLE(-0.09906788170338), + SCALE_SPLIT_ANGLE(-0.10338337719440), + SCALE_SPLIT_ANGLE(-0.10706327110529)}, + {SCALE_SPLIT_ANGLE(-0.06817039847374), + SCALE_SPLIT_ANGLE(-0.06833326816559), + SCALE_SPLIT_ANGLE(-0.06858597695827), + SCALE_SPLIT_ANGLE(-0.06924756616354), + SCALE_SPLIT_ANGLE(-0.06993118673563), + SCALE_SPLIT_ANGLE(-0.07110133022070), + SCALE_SPLIT_ANGLE(-0.07325870543718), + SCALE_SPLIT_ANGLE(-0.07497420907021)}, + {SCALE_SPLIT_ANGLE(-0.04925632849336), + SCALE_SPLIT_ANGLE(-0.04934597387910), + SCALE_SPLIT_ANGLE(-0.04948435723782), + SCALE_SPLIT_ANGLE(-0.04984252154827), + SCALE_SPLIT_ANGLE(-0.05020647123456), + SCALE_SPLIT_ANGLE(-0.05081529170275), + SCALE_SPLIT_ANGLE(-0.05189274996519), + SCALE_SPLIT_ANGLE(-0.05270983278751)}, + {SCALE_SPLIT_ANGLE(-0.02833298221231), + SCALE_SPLIT_ANGLE(-0.02836437523365), + SCALE_SPLIT_ANGLE(-0.02841254323721), + SCALE_SPLIT_ANGLE(-0.02853557653725), + SCALE_SPLIT_ANGLE(-0.02865824848413), + SCALE_SPLIT_ANGLE(-0.02885829471052), + SCALE_SPLIT_ANGLE(-0.02919723838568), + SCALE_SPLIT_ANGLE(-0.02944211103022)}, + {SCALE_SPLIT_ANGLE(-0.01614447496831), + SCALE_SPLIT_ANGLE(-0.01615499891341), + SCALE_SPLIT_ANGLE(-0.01617108844221), + SCALE_SPLIT_ANGLE(-0.01621186546981), + SCALE_SPLIT_ANGLE(-0.01625206507742), + SCALE_SPLIT_ANGLE(-0.01631666161120), + SCALE_SPLIT_ANGLE(-0.01642346009612), + SCALE_SPLIT_ANGLE(-0.01649860478938)}, + {SCALE_SPLIT_ANGLE(-0.00914774928242), + SCALE_SPLIT_ANGLE(-0.00915119051933), + SCALE_SPLIT_ANGLE(-0.00915643945336), + SCALE_SPLIT_ANGLE(-0.00916968192905), + SCALE_SPLIT_ANGLE(-0.00918265059590), + SCALE_SPLIT_ANGLE(-0.00920331384987), + SCALE_SPLIT_ANGLE(-0.00923701003194), + SCALE_SPLIT_ANGLE(-0.00926037784666)}, + {SCALE_SPLIT_ANGLE(-0.00516638066620), + SCALE_SPLIT_ANGLE(-0.00516748940572), + SCALE_SPLIT_ANGLE(-0.00516917882487), + SCALE_SPLIT_ANGLE(-0.00517342938110), + SCALE_SPLIT_ANGLE(-0.00517757609487), + SCALE_SPLIT_ANGLE(-0.00518415309489), + SCALE_SPLIT_ANGLE(-0.00519479531795), + SCALE_SPLIT_ANGLE(-0.00520211551338)}, + {SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563), + SCALE_SPLIT_ANGLE(-0.00000002921563)}, + }, + { + {SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243), + SCALE_SPLIT_ANGLE(-0.78539830446243)}, + {SCALE_SPLIT_ANGLE(-0.78143131732941), + SCALE_SPLIT_ANGLE(-0.78143173456192), + SCALE_SPLIT_ANGLE(-0.78143233060837), + SCALE_SPLIT_ANGLE(-0.78143388032913), + SCALE_SPLIT_ANGLE(-0.78143537044525), + SCALE_SPLIT_ANGLE(-0.78143775463104), + SCALE_SPLIT_ANGLE(-0.78144156932831), + SCALE_SPLIT_ANGLE(-0.78144425153732)}, + {SCALE_SPLIT_ANGLE(-0.77835690975189), + SCALE_SPLIT_ANGLE(-0.77835816144943), + SCALE_SPLIT_ANGLE(-0.77836006879807), + SCALE_SPLIT_ANGLE(-0.77836489677429), + SCALE_SPLIT_ANGLE(-0.77836954593658), + SCALE_SPLIT_ANGLE(-0.77837705612183), + SCALE_SPLIT_ANGLE(-0.77838915586472), + SCALE_SPLIT_ANGLE(-0.77839756011963)}, + {SCALE_SPLIT_ANGLE(-0.77291876077652), + SCALE_SPLIT_ANGLE(-0.77292257547379), + SCALE_SPLIT_ANGLE(-0.77292835712433), + SCALE_SPLIT_ANGLE(-0.77294307947159), + SCALE_SPLIT_ANGLE(-0.77295756340027), + SCALE_SPLIT_ANGLE(-0.77298080921173), + SCALE_SPLIT_ANGLE(-0.77301901578903), + SCALE_SPLIT_ANGLE(-0.77304589748383)}, + {SCALE_SPLIT_ANGLE(-0.76334208250046), + SCALE_SPLIT_ANGLE(-0.76335340738297), + SCALE_SPLIT_ANGLE(-0.76337069272995), + SCALE_SPLIT_ANGLE(-0.76341491937637), + SCALE_SPLIT_ANGLE(-0.76345884799957), + SCALE_SPLIT_ANGLE(-0.76353019475937), + SCALE_SPLIT_ANGLE(-0.76365041732788), + SCALE_SPLIT_ANGLE(-0.76373666524887)}, + {SCALE_SPLIT_ANGLE(-0.74662196636200), + SCALE_SPLIT_ANGLE(-0.74665397405624), + SCALE_SPLIT_ANGLE(-0.74670332670212), + SCALE_SPLIT_ANGLE(-0.74683076143265), + SCALE_SPLIT_ANGLE(-0.74695968627930), + SCALE_SPLIT_ANGLE(-0.74717408418655), + SCALE_SPLIT_ANGLE(-0.74754965305328), + SCALE_SPLIT_ANGLE(-0.74783110618591)}, + {SCALE_SPLIT_ANGLE(-0.73124068975449), + SCALE_SPLIT_ANGLE(-0.73129838705063), + SCALE_SPLIT_ANGLE(-0.73138779401779), + SCALE_SPLIT_ANGLE(-0.73162090778351), + SCALE_SPLIT_ANGLE(-0.73186063766479), + SCALE_SPLIT_ANGLE(-0.73226791620255), + SCALE_SPLIT_ANGLE(-0.73300850391388), + SCALE_SPLIT_ANGLE(-0.73358756303787)}, + {SCALE_SPLIT_ANGLE(-0.71016567945480), + SCALE_SPLIT_ANGLE(-0.71026563644409), + SCALE_SPLIT_ANGLE(-0.71042138338089), + SCALE_SPLIT_ANGLE(-0.71083360910416), + SCALE_SPLIT_ANGLE(-0.71126639842987), + SCALE_SPLIT_ANGLE(-0.71202349662781), + SCALE_SPLIT_ANGLE(-0.71347558498383), + SCALE_SPLIT_ANGLE(-0.71468466520309)}, + {SCALE_SPLIT_ANGLE(-0.68173074722290), + SCALE_SPLIT_ANGLE(-0.68189489841461), + SCALE_SPLIT_ANGLE(-0.68215286731720), + SCALE_SPLIT_ANGLE(-0.68284797668457), + SCALE_SPLIT_ANGLE(-0.68359792232513), + SCALE_SPLIT_ANGLE(-0.68496227264404), + SCALE_SPLIT_ANGLE(-0.68778377771378), + SCALE_SPLIT_ANGLE(-0.69036662578583)}, + {SCALE_SPLIT_ANGLE(-0.64424312114716), + SCALE_SPLIT_ANGLE(-0.64449483156204), + SCALE_SPLIT_ANGLE(-0.64489442110062), + SCALE_SPLIT_ANGLE(-0.64599496126175), + SCALE_SPLIT_ANGLE(-0.64722281694412), + SCALE_SPLIT_ANGLE(-0.64957284927368), + SCALE_SPLIT_ANGLE(-0.65497392416000), + SCALE_SPLIT_ANGLE(-0.66069275140762)}, + {SCALE_SPLIT_ANGLE(-0.59645897150040), + SCALE_SPLIT_ANGLE(-0.59681385755539), + SCALE_SPLIT_ANGLE(-0.59738302230835), + SCALE_SPLIT_ANGLE(-0.59898990392685), + SCALE_SPLIT_ANGLE(-0.60085391998291), + SCALE_SPLIT_ANGLE(-0.60464876890182), + SCALE_SPLIT_ANGLE(-0.61471670866013), + SCALE_SPLIT_ANGLE(-0.62811452150345)}, + {SCALE_SPLIT_ANGLE(-0.55878317356110), + SCALE_SPLIT_ANGLE(-0.55920612812042), + SCALE_SPLIT_ANGLE(-0.55988919734955), + SCALE_SPLIT_ANGLE(-0.56185036897659), + SCALE_SPLIT_ANGLE(-0.56418758630753), + SCALE_SPLIT_ANGLE(-0.56916558742523), + SCALE_SPLIT_ANGLE(-0.58402240276337), + SCALE_SPLIT_ANGLE(-0.60877454280853)}, + {SCALE_SPLIT_ANGLE(-0.51690876483917), + SCALE_SPLIT_ANGLE(-0.51739066839218), + SCALE_SPLIT_ANGLE(-0.51817417144775), + SCALE_SPLIT_ANGLE(-0.52045887708664), + SCALE_SPLIT_ANGLE(-0.52325236797333), + SCALE_SPLIT_ANGLE(-0.52947425842285), + SCALE_SPLIT_ANGLE(-0.55062580108643), + SCALE_SPLIT_ANGLE(-0.59875679016113)}, + {SCALE_SPLIT_ANGLE(-0.47171202301979), + SCALE_SPLIT_ANGLE(-0.47223755717278), + SCALE_SPLIT_ANGLE(-0.47309651970863), + SCALE_SPLIT_ANGLE(-0.47563409805298), + SCALE_SPLIT_ANGLE(-0.47880497574806), + SCALE_SPLIT_ANGLE(-0.48615178465843), + SCALE_SPLIT_ANGLE(-0.51456993818283), + SCALE_SPLIT_ANGLE(-0.61478376388550)}, + {SCALE_SPLIT_ANGLE(-0.42445346713066), + SCALE_SPLIT_ANGLE(-0.42500337958336), + SCALE_SPLIT_ANGLE(-0.42590552568436), + SCALE_SPLIT_ANGLE(-0.42859482765198), + SCALE_SPLIT_ANGLE(-0.43200704455376), + SCALE_SPLIT_ANGLE(-0.44014206528664), + SCALE_SPLIT_ANGLE(-0.47505456209183), + SCALE_SPLIT_ANGLE(-0.70435559749603)}, + {SCALE_SPLIT_ANGLE(-0.37662348151207), + SCALE_SPLIT_ANGLE(-0.37717759609222), + SCALE_SPLIT_ANGLE(-0.37808811664581), + SCALE_SPLIT_ANGLE(-0.38081312179565), + SCALE_SPLIT_ANGLE(-0.38429382443428), + SCALE_SPLIT_ANGLE(-0.39269915223122), + SCALE_SPLIT_ANGLE(-0.43061137199402), + SCALE_SPLIT_ANGLE(-0.89949661493301)}, + {SCALE_SPLIT_ANGLE(-0.32972770929337), + SCALE_SPLIT_ANGLE(-0.33026665449142), + SCALE_SPLIT_ANGLE(-0.33115166425705), + SCALE_SPLIT_ANGLE(-0.33379596471786), + SCALE_SPLIT_ANGLE(-0.33716449141502), + SCALE_SPLIT_ANGLE(-0.34525626897812), + SCALE_SPLIT_ANGLE(-0.38098806142807), + SCALE_SPLIT_ANGLE(-0.66312354803085)}, + {SCALE_SPLIT_ANGLE(-0.28508266806602), + SCALE_SPLIT_ANGLE(-0.28558865189552), + SCALE_SPLIT_ANGLE(-0.28641721606255), + SCALE_SPLIT_ANGLE(-0.28887599706650), + SCALE_SPLIT_ANGLE(-0.29197183251381), + SCALE_SPLIT_ANGLE(-0.29924651980400), + SCALE_SPLIT_ANGLE(-0.32879725098610), + SCALE_SPLIT_ANGLE(-0.45467042922974)}, + {SCALE_SPLIT_ANGLE(-0.24368351697922), + SCALE_SPLIT_ANGLE(-0.24414126574993), + SCALE_SPLIT_ANGLE(-0.24488742649555), + SCALE_SPLIT_ANGLE(-0.24707718193531), + SCALE_SPLIT_ANGLE(-0.24978290498257), + SCALE_SPLIT_ANGLE(-0.25592407584190), + SCALE_SPLIT_ANGLE(-0.27806493639946), + SCALE_SPLIT_ANGLE(-0.33706212043762)}, + {SCALE_SPLIT_ANGLE(-0.20616291463375), + SCALE_SPLIT_ANGLE(-0.20656123757362), + SCALE_SPLIT_ANGLE(-0.20720669627190), + SCALE_SPLIT_ANGLE(-0.20907410979271), + SCALE_SPLIT_ANGLE(-0.21132779121399), + SCALE_SPLIT_ANGLE(-0.21623276174068), + SCALE_SPLIT_ANGLE(-0.23178002238274), + SCALE_SPLIT_ANGLE(-0.26115795969963)}, + {SCALE_SPLIT_ANGLE(-0.17282113432884), + SCALE_SPLIT_ANGLE(-0.17315419018269), + SCALE_SPLIT_ANGLE(-0.17369027435780), + SCALE_SPLIT_ANGLE(-0.17521676421165), + SCALE_SPLIT_ANGLE(-0.17701183259487), + SCALE_SPLIT_ANGLE(-0.18074958026409), + SCALE_SPLIT_ANGLE(-0.19124273955822), + SCALE_SPLIT_ANGLE(-0.20666226744652)}, + {SCALE_SPLIT_ANGLE(-0.13066087663174), + SCALE_SPLIT_ANGLE(-0.13089761137962), + SCALE_SPLIT_ANGLE(-0.13127478957176), + SCALE_SPLIT_ANGLE(-0.13232274353504), + SCALE_SPLIT_ANGLE(-0.13350811600685), + SCALE_SPLIT_ANGLE(-0.13582547008991), + SCALE_SPLIT_ANGLE(-0.14140743017197), + SCALE_SPLIT_ANGLE(-0.14774034917355)}, + {SCALE_SPLIT_ANGLE(-0.09729288518429), + SCALE_SPLIT_ANGLE(-0.09744837880135), + SCALE_SPLIT_ANGLE(-0.09769365936518), + SCALE_SPLIT_ANGLE(-0.09835996478796), + SCALE_SPLIT_ANGLE(-0.09908770024776), + SCALE_SPLIT_ANGLE(-0.10043605417013), + SCALE_SPLIT_ANGLE(-0.10332851856947), + SCALE_SPLIT_ANGLE(-0.10610698908567)}, + {SCALE_SPLIT_ANGLE(-0.07155896723270), + SCALE_SPLIT_ANGLE(-0.07165452837944), + SCALE_SPLIT_ANGLE(-0.07180399447680), + SCALE_SPLIT_ANGLE(-0.07220225781202), + SCALE_SPLIT_ANGLE(-0.07262473553419), + SCALE_SPLIT_ANGLE(-0.07337480783463), + SCALE_SPLIT_ANGLE(-0.07485358417034), + SCALE_SPLIT_ANGLE(-0.07612710446119)}, + {SCALE_SPLIT_ANGLE(-0.05212157964706), + SCALE_SPLIT_ANGLE(-0.05217728391290), + SCALE_SPLIT_ANGLE(-0.05226380378008), + SCALE_SPLIT_ANGLE(-0.05249079316854), + SCALE_SPLIT_ANGLE(-0.05272606760263), + SCALE_SPLIT_ANGLE(-0.05313043296337), + SCALE_SPLIT_ANGLE(-0.05388086661696), + SCALE_SPLIT_ANGLE(-0.05448163300753)}, + {SCALE_SPLIT_ANGLE(-0.03767966106534), + SCALE_SPLIT_ANGLE(-0.03771083801985), + SCALE_SPLIT_ANGLE(-0.03775899857283), + SCALE_SPLIT_ANGLE(-0.03788383677602), + SCALE_SPLIT_ANGLE(-0.03801096975803), + SCALE_SPLIT_ANGLE(-0.03822424262762), + SCALE_SPLIT_ANGLE(-0.03860339894891), + SCALE_SPLIT_ANGLE(-0.03889227285981)}, + {SCALE_SPLIT_ANGLE(-0.02168159000576), + SCALE_SPLIT_ANGLE(-0.02169271185994), + SCALE_SPLIT_ANGLE(-0.02170977741480), + SCALE_SPLIT_ANGLE(-0.02175341919065), + SCALE_SPLIT_ANGLE(-0.02179697901011), + SCALE_SPLIT_ANGLE(-0.02186813205481), + SCALE_SPLIT_ANGLE(-0.02198898792267), + SCALE_SPLIT_ANGLE(-0.02207653038204)}, + {SCALE_SPLIT_ANGLE(-0.01235581189394), + SCALE_SPLIT_ANGLE(-0.01235958002508), + SCALE_SPLIT_ANGLE(-0.01236534304917), + SCALE_SPLIT_ANGLE(-0.01237995456904), + SCALE_SPLIT_ANGLE(-0.01239436771721), + SCALE_SPLIT_ANGLE(-0.01241754833609), + SCALE_SPLIT_ANGLE(-0.01245592441410), + SCALE_SPLIT_ANGLE(-0.01248297002167)}, + {SCALE_SPLIT_ANGLE(-0.00700127193704), + SCALE_SPLIT_ANGLE(-0.00700251199305), + SCALE_SPLIT_ANGLE(-0.00700440304354), + SCALE_SPLIT_ANGLE(-0.00700917467475), + SCALE_SPLIT_ANGLE(-0.00701385131106), + SCALE_SPLIT_ANGLE(-0.00702130468562), + SCALE_SPLIT_ANGLE(-0.00703346915543), + SCALE_SPLIT_ANGLE(-0.00704191112891)}, + {SCALE_SPLIT_ANGLE(-0.00395415676758), + SCALE_SPLIT_ANGLE(-0.00395455863327), + SCALE_SPLIT_ANGLE(-0.00395516911522), + SCALE_SPLIT_ANGLE(-0.00395670579746), + SCALE_SPLIT_ANGLE(-0.00395820569247), + SCALE_SPLIT_ANGLE(-0.00396058475599), + SCALE_SPLIT_ANGLE(-0.00396443624049), + SCALE_SPLIT_ANGLE(-0.00396708631888)}, + {SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068), + SCALE_SPLIT_ANGLE(-0.00000002236068)}, + }, + { + {SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425), + SCALE_SPLIT_ANGLE(-0.39269906282425)}, + {SCALE_SPLIT_ANGLE(-0.39055728912354), + SCALE_SPLIT_ANGLE(-0.39055734872818), + SCALE_SPLIT_ANGLE(-0.39055743813515), + SCALE_SPLIT_ANGLE(-0.39055764675140), + SCALE_SPLIT_ANGLE(-0.39055785536766), + SCALE_SPLIT_ANGLE(-0.39055821299553), + SCALE_SPLIT_ANGLE(-0.39055874943733), + SCALE_SPLIT_ANGLE(-0.39055910706520)}, + {SCALE_SPLIT_ANGLE(-0.38890448212624), + SCALE_SPLIT_ANGLE(-0.38890466094017), + SCALE_SPLIT_ANGLE(-0.38890489935875), + SCALE_SPLIT_ANGLE(-0.38890558481216), + SCALE_SPLIT_ANGLE(-0.38890624046326), + SCALE_SPLIT_ANGLE(-0.38890728354454), + SCALE_SPLIT_ANGLE(-0.38890898227692), + SCALE_SPLIT_ANGLE(-0.38891017436981)}, + {SCALE_SPLIT_ANGLE(-0.38599535822868), + SCALE_SPLIT_ANGLE(-0.38599589467049), + SCALE_SPLIT_ANGLE(-0.38599669933319), + SCALE_SPLIT_ANGLE(-0.38599872589111), + SCALE_SPLIT_ANGLE(-0.38600075244904), + SCALE_SPLIT_ANGLE(-0.38600397109985), + SCALE_SPLIT_ANGLE(-0.38600933551788), + SCALE_SPLIT_ANGLE(-0.38601312041283)}, + {SCALE_SPLIT_ANGLE(-0.38091570138931), + SCALE_SPLIT_ANGLE(-0.38091725111008), + SCALE_SPLIT_ANGLE(-0.38091960549355), + SCALE_SPLIT_ANGLE(-0.38092568516731), + SCALE_SPLIT_ANGLE(-0.38093173503876), + SCALE_SPLIT_ANGLE(-0.38094159960747), + SCALE_SPLIT_ANGLE(-0.38095837831497), + SCALE_SPLIT_ANGLE(-0.38097053766251)}, + {SCALE_SPLIT_ANGLE(-0.37216994166374), + SCALE_SPLIT_ANGLE(-0.37217423319817), + SCALE_SPLIT_ANGLE(-0.37218084931374), + SCALE_SPLIT_ANGLE(-0.37219804525375), + SCALE_SPLIT_ANGLE(-0.37221553921700), + SCALE_SPLIT_ANGLE(-0.37224486470222), + SCALE_SPLIT_ANGLE(-0.37229701876640), + SCALE_SPLIT_ANGLE(-0.37233671545982)}, + {SCALE_SPLIT_ANGLE(-0.36424961686134), + SCALE_SPLIT_ANGLE(-0.36425721645355), + SCALE_SPLIT_ANGLE(-0.36426901817322), + SCALE_SPLIT_ANGLE(-0.36429998278618), + SCALE_SPLIT_ANGLE(-0.36433207988739), + SCALE_SPLIT_ANGLE(-0.36438727378845), + SCALE_SPLIT_ANGLE(-0.36448964476585), + SCALE_SPLIT_ANGLE(-0.36457160115242)}, + {SCALE_SPLIT_ANGLE(-0.35356882214546), + SCALE_SPLIT_ANGLE(-0.35358169674873), + SCALE_SPLIT_ANGLE(-0.35360184311867), + SCALE_SPLIT_ANGLE(-0.35365554690361), + SCALE_SPLIT_ANGLE(-0.35371255874634), + SCALE_SPLIT_ANGLE(-0.35381379723549), + SCALE_SPLIT_ANGLE(-0.35401359200478), + SCALE_SPLIT_ANGLE(-0.35418573021889)}, + {SCALE_SPLIT_ANGLE(-0.33942580223083), + SCALE_SPLIT_ANGLE(-0.33944639563560), + SCALE_SPLIT_ANGLE(-0.33947893977165), + SCALE_SPLIT_ANGLE(-0.33956736326218), + SCALE_SPLIT_ANGLE(-0.33966410160065), + SCALE_SPLIT_ANGLE(-0.33984366059303), + SCALE_SPLIT_ANGLE(-0.34023004770279), + SCALE_SPLIT_ANGLE(-0.34060218930244)}, + {SCALE_SPLIT_ANGLE(-0.32115444540977), + SCALE_SPLIT_ANGLE(-0.32118517160416), + SCALE_SPLIT_ANGLE(-0.32123413681984), + SCALE_SPLIT_ANGLE(-0.32137045264244), + SCALE_SPLIT_ANGLE(-0.32152506709099), + SCALE_SPLIT_ANGLE(-0.32182860374451), + SCALE_SPLIT_ANGLE(-0.32256555557251), + SCALE_SPLIT_ANGLE(-0.32340887188911)}, + {SCALE_SPLIT_ANGLE(-0.29830518364906), + SCALE_SPLIT_ANGLE(-0.29834720492363), + SCALE_SPLIT_ANGLE(-0.29841497540474), + SCALE_SPLIT_ANGLE(-0.29860857129097), + SCALE_SPLIT_ANGLE(-0.29883739352226), + SCALE_SPLIT_ANGLE(-0.29931783676147), + SCALE_SPLIT_ANGLE(-0.30069103837013), + SCALE_SPLIT_ANGLE(-0.30275768041611)}, + {SCALE_SPLIT_ANGLE(-0.28050783276558), + SCALE_SPLIT_ANGLE(-0.28055709600449), + SCALE_SPLIT_ANGLE(-0.28063705563545), + SCALE_SPLIT_ANGLE(-0.28086939454079), + SCALE_SPLIT_ANGLE(-0.28115186095238), + SCALE_SPLIT_ANGLE(-0.28177401423454), + SCALE_SPLIT_ANGLE(-0.28380542993546), + SCALE_SPLIT_ANGLE(-0.28782635927200)}, + {SCALE_SPLIT_ANGLE(-0.26083284616470), + SCALE_SPLIT_ANGLE(-0.26088821887970), + SCALE_SPLIT_ANGLE(-0.26097869873047), + SCALE_SPLIT_ANGLE(-0.26124575734138), + SCALE_SPLIT_ANGLE(-0.26157894730568), + SCALE_SPLIT_ANGLE(-0.26234790682793), + SCALE_SPLIT_ANGLE(-0.26525342464447), + SCALE_SPLIT_ANGLE(-0.27373573184013)}, + {SCALE_SPLIT_ANGLE(-0.23960019648075), + SCALE_SPLIT_ANGLE(-0.23966008424759), + SCALE_SPLIT_ANGLE(-0.23975844681263), + SCALE_SPLIT_ANGLE(-0.24005250632763), + SCALE_SPLIT_ANGLE(-0.24042734503746), + SCALE_SPLIT_ANGLE(-0.24132779240608), + SCALE_SPLIT_ANGLE(-0.24525122344494), + SCALE_SPLIT_ANGLE(-0.26534584164619)}, + {SCALE_SPLIT_ANGLE(-0.21727462112904), + SCALE_SPLIT_ANGLE(-0.21733717620373), + SCALE_SPLIT_ANGLE(-0.21744027733803), + SCALE_SPLIT_ANGLE(-0.21775110065937), + SCALE_SPLIT_ANGLE(-0.21815298497677), + SCALE_SPLIT_ANGLE(-0.21914556622505), + SCALE_SPLIT_ANGLE(-0.22397416830063), + SCALE_SPLIT_ANGLE(-0.27997338771820)}, + {SCALE_SPLIT_ANGLE(-0.19442924857140), + SCALE_SPLIT_ANGLE(-0.19449259340763), + SCALE_SPLIT_ANGLE(-0.19459711015224), + SCALE_SPLIT_ANGLE(-0.19491319358349), + SCALE_SPLIT_ANGLE(-0.19532407820225), + SCALE_SPLIT_ANGLE(-0.19634953141212), + SCALE_SPLIT_ANGLE(-0.20156541466713), + SCALE_SPLIT_ANGLE(-0.33650863170624)}, + {SCALE_SPLIT_ANGLE(-0.17168678343296), + SCALE_SPLIT_ANGLE(-0.17174907028675), + SCALE_SPLIT_ANGLE(-0.17185172438622), + SCALE_SPLIT_ANGLE(-0.17216137051582), + SCALE_SPLIT_ANGLE(-0.17256210744381), + SCALE_SPLIT_ANGLE(-0.17355349659920), + SCALE_SPLIT_ANGLE(-0.17841055989265), + SCALE_SPLIT_ANGLE(-0.23922458291054)}, + {SCALE_SPLIT_ANGLE(-0.14965106546879), + SCALE_SPLIT_ANGLE(-0.14971044659615), + SCALE_SPLIT_ANGLE(-0.14980801939964), + SCALE_SPLIT_ANGLE(-0.15010000765324), + SCALE_SPLIT_ANGLE(-0.15047281980515), + SCALE_SPLIT_ANGLE(-0.15137127041817), + SCALE_SPLIT_ANGLE(-0.15533344447613), + SCALE_SPLIT_ANGLE(-0.17691853642464)}, + {SCALE_SPLIT_ANGLE(-0.12884500622749), + SCALE_SPLIT_ANGLE(-0.12889972329140), + SCALE_SPLIT_ANGLE(-0.12898920476437), + SCALE_SPLIT_ANGLE(-0.12925371527672), + SCALE_SPLIT_ANGLE(-0.12958449125290), + SCALE_SPLIT_ANGLE(-0.13035115599632), + SCALE_SPLIT_ANGLE(-0.13329000771046), + SCALE_SPLIT_ANGLE(-0.14226882159710)}, + {SCALE_SPLIT_ANGLE(-0.10966771095991), + SCALE_SPLIT_ANGLE(-0.10971628129482), + SCALE_SPLIT_ANGLE(-0.10979521274567), + SCALE_SPLIT_ANGLE(-0.11002496629953), + SCALE_SPLIT_ANGLE(-0.11030505597591), + SCALE_SPLIT_ANGLE(-0.11092507094145), + SCALE_SPLIT_ANGLE(-0.11297955363989), + SCALE_SPLIT_ANGLE(-0.11718675494194)}, + {SCALE_SPLIT_ANGLE(-0.09237615764141), + SCALE_SPLIT_ANGLE(-0.09241757541895), + SCALE_SPLIT_ANGLE(-0.09248440712690), + SCALE_SPLIT_ANGLE(-0.09267570078373), + SCALE_SPLIT_ANGLE(-0.09290252625942), + SCALE_SPLIT_ANGLE(-0.09338124096394), + SCALE_SPLIT_ANGLE(-0.09476861357689), + SCALE_SPLIT_ANGLE(-0.09691139310598)}, + {SCALE_SPLIT_ANGLE(-0.07020132243633), + SCALE_SPLIT_ANGLE(-0.07023159414530), + SCALE_SPLIT_ANGLE(-0.07027988135815), + SCALE_SPLIT_ANGLE(-0.07041461765766), + SCALE_SPLIT_ANGLE(-0.07056794315577), + SCALE_SPLIT_ANGLE(-0.07087046653032), + SCALE_SPLIT_ANGLE(-0.07161350548267), + SCALE_SPLIT_ANGLE(-0.07247892767191)}, + {SCALE_SPLIT_ANGLE(-0.05244029313326), + SCALE_SPLIT_ANGLE(-0.05246063694358), + SCALE_SPLIT_ANGLE(-0.05249277129769), + SCALE_SPLIT_ANGLE(-0.05258031189442), + SCALE_SPLIT_ANGLE(-0.05267634615302), + SCALE_SPLIT_ANGLE(-0.05285539105535), + SCALE_SPLIT_ANGLE(-0.05324416607618), + SCALE_SPLIT_ANGLE(-0.05362325906754)}, + {SCALE_SPLIT_ANGLE(-0.03864165395498), + SCALE_SPLIT_ANGLE(-0.03865438699722), + SCALE_SPLIT_ANGLE(-0.03867433220148), + SCALE_SPLIT_ANGLE(-0.03872758150101), + SCALE_SPLIT_ANGLE(-0.03878423944116), + SCALE_SPLIT_ANGLE(-0.03888526186347), + SCALE_SPLIT_ANGLE(-0.03908598423004), + SCALE_SPLIT_ANGLE(-0.03926040232182)}, + {SCALE_SPLIT_ANGLE(-0.02817477099597), + SCALE_SPLIT_ANGLE(-0.02818230539560), + SCALE_SPLIT_ANGLE(-0.02819401212037), + SCALE_SPLIT_ANGLE(-0.02822477370501), + SCALE_SPLIT_ANGLE(-0.02825672924519), + SCALE_SPLIT_ANGLE(-0.02831180207431), + SCALE_SPLIT_ANGLE(-0.02841453626752), + SCALE_SPLIT_ANGLE(-0.02849724888802)}, + {SCALE_SPLIT_ANGLE(-0.02037952840328), + SCALE_SPLIT_ANGLE(-0.02038379199803), + SCALE_SPLIT_ANGLE(-0.02039037644863), + SCALE_SPLIT_ANGLE(-0.02040746808052), + SCALE_SPLIT_ANGLE(-0.02042490057647), + SCALE_SPLIT_ANGLE(-0.02045419998467), + SCALE_SPLIT_ANGLE(-0.02050646580756), + SCALE_SPLIT_ANGLE(-0.02054643817246)}, + {SCALE_SPLIT_ANGLE(-0.01173160132021), + SCALE_SPLIT_ANGLE(-0.01173313893378), + SCALE_SPLIT_ANGLE(-0.01173550169915), + SCALE_SPLIT_ANGLE(-0.01174154412001), + SCALE_SPLIT_ANGLE(-0.01174758281559), + SCALE_SPLIT_ANGLE(-0.01175745390356), + SCALE_SPLIT_ANGLE(-0.01177425216883), + SCALE_SPLIT_ANGLE(-0.01178644038737)}, + {SCALE_SPLIT_ANGLE(-0.00668647419661), + SCALE_SPLIT_ANGLE(-0.00668699899688), + SCALE_SPLIT_ANGLE(-0.00668780226260), + SCALE_SPLIT_ANGLE(-0.00668983859941), + SCALE_SPLIT_ANGLE(-0.00669184979051), + SCALE_SPLIT_ANGLE(-0.00669508427382), + SCALE_SPLIT_ANGLE(-0.00670044496655), + SCALE_SPLIT_ANGLE(-0.00670422706753)}, + {SCALE_SPLIT_ANGLE(-0.00378898018971), + SCALE_SPLIT_ANGLE(-0.00378915364854), + SCALE_SPLIT_ANGLE(-0.00378941860981), + SCALE_SPLIT_ANGLE(-0.00379008613527), + SCALE_SPLIT_ANGLE(-0.00379074038938), + SCALE_SPLIT_ANGLE(-0.00379178440198), + SCALE_SPLIT_ANGLE(-0.00379348848946), + SCALE_SPLIT_ANGLE(-0.00379467150196)}, + {SCALE_SPLIT_ANGLE(-0.00213995948434), + SCALE_SPLIT_ANGLE(-0.00214001582935), + SCALE_SPLIT_ANGLE(-0.00214010151103), + SCALE_SPLIT_ANGLE(-0.00214031687938), + SCALE_SPLIT_ANGLE(-0.00214052735828), + SCALE_SPLIT_ANGLE(-0.00214086123742), + SCALE_SPLIT_ANGLE(-0.00214140163735), + SCALE_SPLIT_ANGLE(-0.00214177393354)}, + {SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151), + SCALE_SPLIT_ANGLE(-0.00000001210151)}, + }, +}; #define SCALE_CLD(a) (FL2FXCONST_CFG(a)) diff --git a/libSACdec/src/sac_rom.h b/libSACdec/src/sac_rom.h index 552585b..38f17f2 100644 --- a/libSACdec/src/sac_rom.h +++ b/libSACdec/src/sac_rom.h @@ -160,6 +160,7 @@ extern const FIXP_CFG dequantCLD__FDK[31]; (FL2FXCONST_DBL(3.1415926535897932f / (float)(1 << (IPD_SCALE - 1)))) extern const FIXP_CFG dequantIPD__FDK[16]; +extern const FIXP_DBL dequantIPD_CLD_ICC_splitAngle__FDK[15][31][8]; extern const FIXP_CFG H11_nc[31][8]; extern const FIXP_CFG H12_nc[31][8]; From 55002323b3a94a8a827b66acc693cbdd38e57119 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 8 Mar 2019 16:08:24 +0100 Subject: [PATCH 25/26] Fix integer overflow in FDKaacEnc_IntensityStereoProcessing(). Bug: 132641988 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: Id2a7e26fff499146a39cea757b1b7fc787b54b31 --- libAACenc/src/intensity.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/libAACenc/src/intensity.cpp b/libAACenc/src/intensity.cpp index a160a4f..0944fa3 100644 --- a/libAACenc/src/intensity.cpp +++ b/libAACenc/src/intensity.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -661,6 +661,7 @@ void FDKaacEnc_IntensityStereoProcessing( for (sfboffs = 0; sfboffs < maxSfbPerGroup; sfboffs++) { INT sL, sR; FIXP_DBL inv_n; + INT mdct_spec_sf = MDCT_SPEC_SF; msMask[sfb + sfboffs] = 0; if (isMask[sfb + sfboffs] == 0) { @@ -682,6 +683,12 @@ void FDKaacEnc_IntensityStereoProcessing( } } + if (sfbOffset[sfb + sfboffs + 1] - sfbOffset[sfb + sfboffs] > + 1 << mdct_spec_sf) { + mdct_spec_sf++; /* This is for rare cases where the number of bins in a + scale factor band is > 64 */ + } + inv_n = GetInvInt( (sfbOffset[sfb + sfboffs + 1] - sfbOffset[sfb + sfboffs]) >> 1); // scaled with 2 to compensate fMultDiv2() in subsequent loop @@ -707,11 +714,11 @@ void FDKaacEnc_IntensityStereoProcessing( j++) { d = ((mdctSpectrumLeft[j] << s0) >> 1) - ((mdctSpectrumRight[j] << s0) >> 1); - ed += fMultDiv2(d, d) >> (MDCT_SPEC_SF - 1); + ed += fMultDiv2(d, d) >> (mdct_spec_sf - 1); } msMask[sfb + sfboffs] = 1; tmp = fDivNorm(sfbEnergyLeft[sfb + sfboffs], ed, &s1); - s2 = (s1) + (2 * s0) - 2 - MDCT_SPEC_SF; + s2 = (s1) + (2 * s0) - 2 - mdct_spec_sf; if (s2 & 1) { tmp = tmp >> 1; s2 = s2 + 1; @@ -748,12 +755,12 @@ void FDKaacEnc_IntensityStereoProcessing( s = ((mdctSpectrumLeft[j] << s0) >> 1) + ((mdctSpectrumRight[j] << s0) >> 1); es += fMultDiv2(s, s) >> - (MDCT_SPEC_SF - - 1); // scaled 2*(mdctScale - s0 + 1) + MDCT_SPEC_SF + (mdct_spec_sf - + 1); // scaled 2*(mdctScale - s0 + 1) + mdct_spec_sf } msMask[sfb + sfboffs] = 0; tmp = fDivNorm(sfbEnergyLeft[sfb + sfboffs], es, &s1); - s2 = (s1) + (2 * s0) - 2 - MDCT_SPEC_SF; + s2 = (s1) + (2 * s0) - 2 - mdct_spec_sf; if (s2 & 1) { tmp = tmp >> 1; s2 = s2 + 1; From 5def92cb0fa9284064890d9fe5cb0a54d9e03589 Mon Sep 17 00:00:00 2001 From: Fraunhofer IIS FDK Date: Fri, 3 May 2019 10:25:48 +0200 Subject: [PATCH 26/26] Integer overflow fix in FDKaacEnc_initAvoidHoleFlag() Bug: 121226473 Test: see bug with specific audio stream to encode Change-Id: I282506f0856130fa00c7f7c6e94b18e1162c8593 --- libAACenc/src/adj_thr.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/libAACenc/src/adj_thr.cpp b/libAACenc/src/adj_thr.cpp index 6e19680..226d003 100644 --- a/libAACenc/src/adj_thr.cpp +++ b/libAACenc/src/adj_thr.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -591,13 +591,11 @@ static void FDKaacEnc_initAvoidHoleFlag( if (sfbEn > avgEn) { FIXP_DBL tmpMinSnrLdData; if (psyOutChannel[ch]->lastWindowSequence == LONG_WINDOW) - tmpMinSnrLdData = - fixMax(SnrLdFac + (FIXP_DBL)(avgEnLdData - sfbEnLdData), - (FIXP_DBL)SnrLdMin1); + tmpMinSnrLdData = SnrLdFac + fixMax(avgEnLdData - sfbEnLdData, + SnrLdMin1 - SnrLdFac); else - tmpMinSnrLdData = - fixMax(SnrLdFac + (FIXP_DBL)(avgEnLdData - sfbEnLdData), - (FIXP_DBL)SnrLdMin3); + tmpMinSnrLdData = SnrLdFac + fixMax(avgEnLdData - sfbEnLdData, + SnrLdMin3 - SnrLdFac); qcOutChan->sfbMinSnrLdData[sfbGrp + sfb] = fixMin( qcOutChan->sfbMinSnrLdData[sfbGrp + sfb], tmpMinSnrLdData);