Fix varrious splint warnings, C89 compatibility, and compilation with the
authorGregory Maxwell <greg@xiph.org>
Tue, 2 Aug 2011 02:02:25 +0000 (22:02 -0400)
committerGregory Maxwell <greg@xiph.org>
Tue, 2 Aug 2011 03:07:13 +0000 (23:07 -0400)
draft makefile. Increase precision of the static modes table.

Makefile.draft
libcelt/bands.c
libcelt/celt.c
libcelt/dump_modes.c
libcelt/kiss_fft.h
libcelt/mathops.h
libcelt/mdct.c
libcelt/pitch.c
libcelt/static_modes_float.c

index 2ee921f..85be807 100644 (file)
@@ -18,6 +18,7 @@ CFLAGS += -Drestrict=
 
 ###################### END OF OPTIONS ######################
 
+CFLAGS += -DOPUS_VERSION='"0.9.6"'
 include silk_sources.mk
 include celt_sources.mk
 include opus_sources.mk
index 7952de0..a522b50 100644 (file)
@@ -413,7 +413,7 @@ int spreading_decision(const CELTMode *m, celt_norm *X, int *average,
       for (i=0;i<end;i++)
       {
          int j, N, tmp=0;
-         int tcount[3] = {0};
+         int tcount[3] = {0,0,0};
          celt_norm * restrict x = X+M*eBands[i]+c*N0;
          N = M*(eBands[i+1]-eBands[i]);
          if (N<=8)
index 3341070..a0c83f2 100644 (file)
@@ -582,9 +582,9 @@ static opus_val32 l1_metric(const celt_norm *tmp, int N, int LM, int width)
    return L1;
 }
 
-static int tf_analysis(const CELTMode *m, opus_val16 *bandLogE, opus_val16 *oldBandE,
-      int len, int C, int isTransient, int *tf_res, int nbCompressedBytes, celt_norm *X,
-      int N0, int LM, int *tf_sum)
+static int tf_analysis(const CELTMode *m, int len, int C, int isTransient,
+      int *tf_res, int nbCompressedBytes, celt_norm *X, int N0, int LM,
+      int *tf_sum)
 {
    int i;
    VARDECL(int, metric);
@@ -1277,8 +1277,7 @@ int celt_encode_with_ec_float(CELTEncoder * restrict st, const celt_sig * pcm, i
    normalise_bands(st->mode, freq, X, bandE, effEnd, C, M);
 
    ALLOC(tf_res, st->mode->nbEBands, int);
-   /* Needs to be before coarse energy quantization because otherwise the energy gets modified */
-   tf_select = tf_analysis(st->mode, bandLogE, oldBandE, effEnd, C, isTransient, tf_res, effectiveBytes, X, N, LM, &tf_sum);
+   tf_select = tf_analysis(st->mode, effEnd, C, isTransient, tf_res, effectiveBytes, X, N, LM, &tf_sum);
    for (i=effEnd;i<st->end;i++)
       tf_res[i] = tf_res[effEnd-1];
 
@@ -2107,7 +2106,7 @@ static void celt_decode_lost(CELTDecoder * restrict st, opus_val16 * restrict pc
          opus_val32 ac[LPC_ORDER+1];
          opus_val16 decay = 1;
          opus_val32 S1=0;
-         opus_val16 mem[LPC_ORDER]={0};
+         opus_val16 mem[LPC_ORDER]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
 
          ALLOC(e, MAX_PERIOD+2*st->mode->overlap, opus_val32);
 
index abc84e3..9051475 100644 (file)
@@ -38,7 +38,7 @@
 
 #define INT16 "%d"
 #define INT32 "%d"
-#define FLOAT "%0.9ff"
+#define FLOAT "%#0.8gf"
 
 #ifdef FIXED_POINT
 #define WORD16 INT16
index ba72512..0948831 100644 (file)
@@ -111,7 +111,7 @@ typedef struct kiss_fft_state{
     const kiss_twiddle_cpx *twiddles;
 } kiss_fft_state;
 
-//typedef struct kiss_fft_state* kiss_fft_cfg;
+/*typedef struct kiss_fft_state* kiss_fft_cfg;*/
 
 /**
  *  kiss_fft_alloc
index 6c7fc76..896fc77 100644 (file)
@@ -45,11 +45,12 @@ unsigned isqrt32(opus_uint32 _val);
 
 #ifndef FIXED_POINT
 
+#define PI 3.141592653f
 #define celt_sqrt(x) ((float)sqrt(x))
 #define celt_rsqrt(x) (1.f/celt_sqrt(x))
 #define celt_rsqrt_norm(x) (celt_rsqrt(x))
 #define celt_exp exp
-#define celt_cos_norm(x) ((float)cos((.5f*M_PI)*(x)))
+#define celt_cos_norm(x) ((float)cos((.5f*PI)*(x)))
 #define celt_atan atan
 #define celt_rcp(x) (1.f/(x))
 #define celt_div(a,b) ((a)/(b))
index 41d45cf..375e4d9 100644 (file)
@@ -53,8 +53,6 @@
 #include "mathops.h"
 #include "stack_alloc.h"
 
-#define PI 3.141592653f
-
 #ifdef CUSTOM_MODES
 
 int clt_mdct_init(mdct_lookup *l,int N, int maxshift)
@@ -86,7 +84,7 @@ int clt_mdct_init(mdct_lookup *l,int N, int maxshift)
       trig[i] = TRIG_UPSCALE*celt_cos_norm(DIV32(ADD32(SHL32(EXTEND32(i),17),N2),N));
 #else
    for (i=0;i<=N4;i++)
-      trig[i] = (kiss_twiddle_scalar)cos(2*M_PI*i/N);
+      trig[i] = (kiss_twiddle_scalar)cos(2*PI*i/N);
 #endif
    return 1;
 }
index efd4717..89a00f8 100644 (file)
@@ -42,7 +42,7 @@
 #include "mathops.h"
 
 static void find_best_pitch(opus_val32 *xcorr, opus_val32 maxcorr, opus_val16 *y,
-                            int yshift, int len, int max_pitch, int best_pitch[2])
+                            int yshift, int len, int max_pitch, int *best_pitch)
 {
    int i, j;
    opus_val32 Syy=1;
@@ -150,7 +150,7 @@ void pitch_search(const opus_val16 * restrict x_lp, opus_val16 * restrict y,
 {
    int i, j;
    int lag;
-   int best_pitch[2]={0};
+   int best_pitch[2]={0,0};
    VARDECL(opus_val16, x_lp4);
    VARDECL(opus_val16, y_lp4);
    VARDECL(opus_val32, xcorr);
index 43fa92d..bed9ccd 100644 (file)
@@ -6,7 +6,7 @@
 #ifndef DEF_WINDOW120
 #define DEF_WINDOW120
 static const opus_val16 window120[120] = {
-0.000067000f, 0.000606000f, 0.001682000f, 0.003295000f, 0.005444000f, 0.008128000f, 0.011344000f, 0.015091000f, 0.019365000f, 0.024164001f, 0.029483000f, 0.035319999f, 0.041669000f, 0.048525002f, 0.055884000f, 0.063738003f, 0.072081998f, 0.080907002f, 0.090208001f, 0.099973999f, 0.110197999f, 0.120869003f, 0.131977007f, 0.143511996f, 0.155461997f, 0.167814001f, 0.180555001f, 0.193673000f, 0.207151994f, 0.220976993f, 0.235131994f, 0.249602005f, 0.264369011f, 0.279413998f, 0.294719994f, 0.310268015f, 0.326038003f, 0.342009008f, 0.358161986f, 0.374473989f, 0.390924990f, 0.407490999f, 0.424151987f, 0.440883994f, 0.457664996f, 0.474471003f, 0.491279989f, 0.508068025f, 0.524812996f, 0.541490972f, 0.558080018f, 0.574557006f, 0.590900004f, 0.607088029f, 0.623099983f, 0.638912976f, 0.654509008f, 0.669867992f, 0.684970975f, 0.699800014f, 0.714339018f, 0.728570998f, 0.742479980f, 0.756053984f, 0.769279003f, 0.782142997f, 0.794633985f, 0.806743979f, 0.818464994f, 0.829787016f, 0.840707004f, 0.851217985f, 0.861316979f, 0.871002018f, 0.880271018f, 0.889124990f, 0.897563994f, 0.905591011f, 0.913209021f, 0.920422971f, 0.927236974f, 0.933659971f, 0.939697027f, 0.945357025f, 0.950649023f, 0.955583990f, 0.960170984f, 0.964421988f, 0.968348980f, 0.971962988f, 0.975278974f, 0.978308976f, 0.981065989f, 0.983564973f, 0.985818982f, 0.987842023f, 0.989648998f, 0.991253018f, 0.992668986f, 0.993910015f, 0.994989991f, 0.995922983f, 0.996721983f, 0.997398973f, 0.997967005f, 0.998436987f, 0.998821974f, 0.999131978f, 0.999375999f, 0.999565005f, 0.999707997f, 0.999812007f, 0.999885976f, 0.999935985f, 0.999966979f, 0.999984980f, 0.999994993f, 0.999998987f, 1.000000000f, 1.000000000f, };
+6.7286966e-05f, 0.00060551348f, 0.0016815970f, 0.0032947962f, 0.0054439943f, 0.0081276923f, 0.011344001f, 0.015090633f, 0.019364886f, 0.024163635f, 0.029483315f, 0.035319905f, 0.041668911f, 0.048525347f, 0.055883718f, 0.063737999f, 0.072081616f, 0.080907428f, 0.090207705f, 0.099974111f, 0.11019769f, 0.12086883f, 0.13197729f, 0.14351214f, 0.15546177f, 0.16781389f, 0.18055550f, 0.19367290f, 0.20715171f, 0.22097682f, 0.23513243f, 0.24960208f, 0.26436860f, 0.27941419f, 0.29472040f, 0.31026818f, 0.32603788f, 0.34200931f, 0.35816177f, 0.37447407f, 0.39092462f, 0.40749142f, 0.42415215f, 0.44088423f, 0.45766484f, 0.47447104f, 0.49127978f, 0.50806798f, 0.52481261f, 0.54149077f, 0.55807973f, 0.57455701f, 0.59090049f, 0.60708841f, 0.62309951f, 0.63891306f, 0.65450896f, 0.66986776f, 0.68497077f, 0.69980010f, 0.71433873f, 0.72857055f, 0.74248043f, 0.75605424f, 0.76927895f, 0.78214257f, 0.79463430f, 0.80674445f, 0.81846456f, 0.82978733f, 0.84070669f, 0.85121779f, 0.86131698f, 0.87100183f, 0.88027111f, 0.88912479f, 0.89756398f, 0.90559094f, 0.91320904f, 0.92042270f, 0.92723738f, 0.93365955f, 0.93969656f, 0.94535671f, 0.95064907f, 0.95558353f, 0.96017067f, 0.96442171f, 0.96834849f, 0.97196334f, 0.97527906f, 0.97830883f, 0.98106616f, 0.98356480f, 0.98581869f, 0.98784191f, 0.98964856f, 0.99125274f, 0.99266849f, 0.99390969f, 0.99499004f, 0.99592297f, 0.99672162f, 0.99739874f, 0.99796667f, 0.99843728f, 0.99882195f, 0.99913147f, 0.99937606f, 0.99956527f, 0.99970802f, 0.99981248f, 0.99988613f, 0.99993565f, 0.99996697f, 0.99998518f, 0.99999457f, 0.99999859f, 0.99999982f, 1.0000000f, };
 #endif
 
 #ifndef DEF_LOGN400
@@ -28,7 +28,7 @@ static const unsigned char cache_caps50[168] = {
 #ifndef FFT_TWIDDLES48000_960
 #define FFT_TWIDDLES48000_960
 static const kiss_twiddle_cpx fft_twiddles48000_960[480] = {
-{1.000000000f, -0.000000000f}, {0.999913990f, -0.013090000f}, {0.999656975f, -0.026177000f}, {0.999229014f, -0.039260000f}, {0.998629987f, -0.052336000f}, {0.997859001f, -0.065403000f}, {0.996917009f, -0.078459002f}, {0.995805025f, -0.091502003f}, {0.994521976f, -0.104528002f}, {0.993067980f, -0.117536999f}, {0.991445005f, -0.130526006f}, {0.989651024f, -0.143492997f}, {0.987688005f, -0.156434000f}, {0.985556006f, -0.169349998f}, {0.983255029f, -0.182236001f}, {0.980785012f, -0.195089996f}, {0.978147984f, -0.207911998f}, {0.975341976f, -0.220697001f}, {0.972370028f, -0.233445004f}, {0.969231009f, -0.246152997f}, {0.965925992f, -0.258819014f}, {0.962454975f, -0.271439999f}, {0.958819985f, -0.284015000f}, {0.955020010f, -0.296541989f}, {0.951057017f, -0.309017003f}, {0.946929991f, -0.321438998f}, {0.942641020f, -0.333806992f}, {0.938190997f, -0.346116990f}, {0.933579981f, -0.358368009f}, {0.928810000f, -0.370557010f}, {0.923879981f, -0.382683009f}, {0.918790996f, -0.394744009f}, {0.913545012f, -0.406737000f}, {0.908142984f, -0.418660015f}, {0.902585030f, -0.430510998f}, {0.896872997f, -0.442288995f}, {0.891007006f, -0.453990012f}, {0.884988010f, -0.465615004f}, {0.878817022f, -0.477158993f}, {0.872496009f, -0.488620996f}, {0.866024971f, -0.500000000f}, {0.859405994f, -0.511292994f}, {0.852639973f, -0.522499025f}, {0.845727980f, -0.533614993f}, {0.838671029f, -0.544638991f}, {0.831470013f, -0.555570006f}, {0.824126005f, -0.566406012f}, {0.816641986f, -0.577144980f}, {0.809017003f, -0.587785006f}, {0.801253974f, -0.598325014f}, {0.793353021f, -0.608761013f}, {0.785317004f, -0.619094014f}, {0.777145982f, -0.629320025f}, {0.768841982f, -0.639438987f}, {0.760406017f, -0.649447978f}, {0.751839995f, -0.659345984f}, {0.743144989f, -0.669130981f}, {0.734322011f, -0.678801000f}, {0.725373983f, -0.688355029f}, {0.716301978f, -0.697790027f}, {0.707107008f, -0.707107008f}, {0.697790027f, -0.716301978f}, {0.688355029f, -0.725373983f}, {0.678801000f, -0.734322011f}, {0.669130981f, -0.743144989f}, {0.659345984f, -0.751839995f}, {0.649447978f, -0.760406017f}, {0.639438987f, -0.768841982f}, {0.629320025f, -0.777145982f}, {0.619094014f, -0.785317004f}, {0.608761013f, -0.793353021f}, {0.598325014f, -0.801253974f}, {0.587785006f, -0.809017003f}, {0.577144980f, -0.816641986f}, {0.566406012f, -0.824126005f}, {0.555570006f, -0.831470013f}, {0.544638991f, -0.838671029f}, {0.533614993f, -0.845727980f}, {0.522499025f, -0.852639973f}, {0.511292994f, -0.859405994f}, {0.500000000f, -0.866024971f}, {0.488620996f, -0.872496009f}, {0.477158993f, -0.878817022f}, {0.465615004f, -0.884988010f}, {0.453990012f, -0.891007006f}, {0.442288995f, -0.896872997f}, {0.430510998f, -0.902585030f}, {0.418660015f, -0.908142984f}, {0.406737000f, -0.913545012f}, {0.394744009f, -0.918790996f}, {0.382683009f, -0.923879981f}, {0.370557010f, -0.928810000f}, {0.358368009f, -0.933579981f}, {0.346116990f, -0.938190997f}, {0.333806992f, -0.942641020f}, {0.321438998f, -0.946929991f}, {0.309017003f, -0.951057017f}, {0.296541989f, -0.955020010f}, {0.284015000f, -0.958819985f}, {0.271439999f, -0.962454975f}, {0.258819014f, -0.965925992f}, {0.246152997f, -0.969231009f}, {0.233445004f, -0.972370028f}, {0.220697001f, -0.975341976f}, {0.207911998f, -0.978147984f}, {0.195089996f, -0.980785012f}, {0.182236001f, -0.983255029f}, {0.169349998f, -0.985556006f}, {0.156434000f, -0.987688005f}, {0.143492997f, -0.989651024f}, {0.130526006f, -0.991445005f}, {0.117536999f, -0.993067980f}, {0.104528002f, -0.994521976f}, {0.091502003f, -0.995805025f}, {0.078459002f, -0.996917009f}, {0.065403000f, -0.997859001f}, {0.052336000f, -0.998629987f}, {0.039260000f, -0.999229014f}, {0.026177000f, -0.999656975f}, {0.013090000f, -0.999913990f}, {0.000000000f, -1.000000000f}, {-0.013090000f, -0.999913990f}, {-0.026177000f, -0.999656975f}, {-0.039260000f, -0.999229014f}, {-0.052336000f, -0.998629987f}, {-0.065403000f, -0.997859001f}, {-0.078459002f, -0.996917009f}, {-0.091502003f, -0.995805025f}, {-0.104528002f, -0.994521976f}, {-0.117536999f, -0.993067980f}, {-0.130526006f, -0.991445005f}, {-0.143492997f, -0.989651024f}, {-0.156434000f, -0.987688005f}, {-0.169349998f, -0.985556006f}, {-0.182236001f, -0.983255029f}, {-0.195089996f, -0.980785012f}, {-0.207911998f, -0.978147984f}, {-0.220697001f, -0.975341976f}, {-0.233445004f, -0.972370028f}, {-0.246152997f, -0.969231009f}, {-0.258819014f, -0.965925992f}, {-0.271439999f, -0.962454975f}, {-0.284015000f, -0.958819985f}, {-0.296541989f, -0.955020010f}, {-0.309017003f, -0.951057017f}, {-0.321438998f, -0.946929991f}, {-0.333806992f, -0.942641020f}, {-0.346116990f, -0.938190997f}, {-0.358368009f, -0.933579981f}, {-0.370557010f, -0.928810000f}, {-0.382683009f, -0.923879981f}, {-0.394744009f, -0.918790996f}, {-0.406737000f, -0.913545012f}, {-0.418660015f, -0.908142984f}, {-0.430510998f, -0.902585030f}, {-0.442288995f, -0.896872997f}, {-0.453990012f, -0.891007006f}, {-0.465615004f, -0.884988010f}, {-0.477158993f, -0.878817022f}, {-0.488620996f, -0.872496009f}, {-0.500000000f, -0.866024971f}, {-0.511292994f, -0.859405994f}, {-0.522499025f, -0.852639973f}, {-0.533614993f, -0.845727980f}, {-0.544638991f, -0.838671029f}, {-0.555570006f, -0.831470013f}, {-0.566406012f, -0.824126005f}, {-0.577144980f, -0.816641986f}, {-0.587785006f, -0.809017003f}, {-0.598325014f, -0.801253974f}, {-0.608761013f, -0.793353021f}, {-0.619094014f, -0.785317004f}, {-0.629320025f, -0.777145982f}, {-0.639438987f, -0.768841982f}, {-0.649447978f, -0.760406017f}, {-0.659345984f, -0.751839995f}, {-0.669130981f, -0.743144989f}, {-0.678801000f, -0.734322011f}, {-0.688355029f, -0.725373983f}, {-0.697790027f, -0.716301978f}, {-0.707107008f, -0.707107008f}, {-0.716301978f, -0.697790027f}, {-0.725373983f, -0.688355029f}, {-0.734322011f, -0.678801000f}, {-0.743144989f, -0.669130981f}, {-0.751839995f, -0.659345984f}, {-0.760406017f, -0.649447978f}, {-0.768841982f, -0.639438987f}, {-0.777145982f, -0.629320025f}, {-0.785317004f, -0.619094014f}, {-0.793353021f, -0.608761013f}, {-0.801253974f, -0.598325014f}, {-0.809017003f, -0.587785006f}, {-0.816641986f, -0.577144980f}, {-0.824126005f, -0.566406012f}, {-0.831470013f, -0.555570006f}, {-0.838671029f, -0.544638991f}, {-0.845727980f, -0.533614993f}, {-0.852639973f, -0.522499025f}, {-0.859405994f, -0.511292994f}, {-0.866024971f, -0.500000000f}, {-0.872496009f, -0.488620996f}, {-0.878817022f, -0.477158993f}, {-0.884988010f, -0.465615004f}, {-0.891007006f, -0.453990012f}, {-0.896872997f, -0.442288995f}, {-0.902585030f, -0.430510998f}, {-0.908142984f, -0.418660015f}, {-0.913545012f, -0.406737000f}, {-0.918790996f, -0.394744009f}, {-0.923879981f, -0.382683009f}, {-0.928810000f, -0.370557010f}, {-0.933579981f, -0.358368009f}, {-0.938190997f, -0.346116990f}, {-0.942641020f, -0.333806992f}, {-0.946929991f, -0.321438998f}, {-0.951057017f, -0.309017003f}, {-0.955020010f, -0.296541989f}, {-0.958819985f, -0.284015000f}, {-0.962454975f, -0.271439999f}, {-0.965925992f, -0.258819014f}, {-0.969231009f, -0.246152997f}, {-0.972370028f, -0.233445004f}, {-0.975341976f, -0.220697001f}, {-0.978147984f, -0.207911998f}, {-0.980785012f, -0.195089996f}, {-0.983255029f, -0.182236001f}, {-0.985556006f, -0.169349998f}, {-0.987688005f, -0.156434000f}, {-0.989651024f, -0.143492997f}, {-0.991445005f, -0.130526006f}, {-0.993067980f, -0.117536999f}, {-0.994521976f, -0.104528002f}, {-0.995805025f, -0.091502003f}, {-0.996917009f, -0.078459002f}, {-0.997859001f, -0.065403000f}, {-0.998629987f, -0.052336000f}, {-0.999229014f, -0.039260000f}, {-0.999656975f, -0.026177000f}, {-0.999913990f, -0.013090000f}, {-1.000000000f, -0.000000000f}, {-0.999913990f, 0.013090000f}, {-0.999656975f, 0.026177000f}, {-0.999229014f, 0.039260000f}, {-0.998629987f, 0.052336000f}, {-0.997859001f, 0.065403000f}, {-0.996917009f, 0.078459002f}, {-0.995805025f, 0.091502003f}, {-0.994521976f, 0.104528002f}, {-0.993067980f, 0.117536999f}, {-0.991445005f, 0.130526006f}, {-0.989651024f, 0.143492997f}, {-0.987688005f, 0.156434000f}, {-0.985556006f, 0.169349998f}, {-0.983255029f, 0.182236001f}, {-0.980785012f, 0.195089996f}, {-0.978147984f, 0.207911998f}, {-0.975341976f, 0.220697001f}, {-0.972370028f, 0.233445004f}, {-0.969231009f, 0.246152997f}, {-0.965925992f, 0.258819014f}, {-0.962454975f, 0.271439999f}, {-0.958819985f, 0.284015000f}, {-0.955020010f, 0.296541989f}, {-0.951057017f, 0.309017003f}, {-0.946929991f, 0.321438998f}, {-0.942641020f, 0.333806992f}, {-0.938190997f, 0.346116990f}, {-0.933579981f, 0.358368009f}, {-0.928810000f, 0.370557010f}, {-0.923879981f, 0.382683009f}, {-0.918790996f, 0.394744009f}, {-0.913545012f, 0.406737000f}, {-0.908142984f, 0.418660015f}, {-0.902585030f, 0.430510998f}, {-0.896872997f, 0.442288995f}, {-0.891007006f, 0.453990012f}, {-0.884988010f, 0.465615004f}, {-0.878817022f, 0.477158993f}, {-0.872496009f, 0.488620996f}, {-0.866024971f, 0.500000000f}, {-0.859405994f, 0.511292994f}, {-0.852639973f, 0.522499025f}, {-0.845727980f, 0.533614993f}, {-0.838671029f, 0.544638991f}, {-0.831470013f, 0.555570006f}, {-0.824126005f, 0.566406012f}, {-0.816641986f, 0.577144980f}, {-0.809017003f, 0.587785006f}, {-0.801253974f, 0.598325014f}, {-0.793353021f, 0.608761013f}, {-0.785317004f, 0.619094014f}, {-0.777145982f, 0.629320025f}, {-0.768841982f, 0.639438987f}, {-0.760406017f, 0.649447978f}, {-0.751839995f, 0.659345984f}, {-0.743144989f, 0.669130981f}, {-0.734322011f, 0.678801000f}, {-0.725373983f, 0.688355029f}, {-0.716301978f, 0.697790027f}, {-0.707107008f, 0.707107008f}, {-0.697790027f, 0.716301978f}, {-0.688355029f, 0.725373983f}, {-0.678801000f, 0.734322011f}, {-0.669130981f, 0.743144989f}, {-0.659345984f, 0.751839995f}, {-0.649447978f, 0.760406017f}, {-0.639438987f, 0.768841982f}, {-0.629320025f, 0.777145982f}, {-0.619094014f, 0.785317004f}, {-0.608761013f, 0.793353021f}, {-0.598325014f, 0.801253974f}, {-0.587785006f, 0.809017003f}, {-0.577144980f, 0.816641986f}, {-0.566406012f, 0.824126005f}, {-0.555570006f, 0.831470013f}, {-0.544638991f, 0.838671029f}, {-0.533614993f, 0.845727980f}, {-0.522499025f, 0.852639973f}, {-0.511292994f, 0.859405994f}, {-0.500000000f, 0.866024971f}, {-0.488620996f, 0.872496009f}, {-0.477158993f, 0.878817022f}, {-0.465615004f, 0.884988010f}, {-0.453990012f, 0.891007006f}, {-0.442288995f, 0.896872997f}, {-0.430510998f, 0.902585030f}, {-0.418660015f, 0.908142984f}, {-0.406737000f, 0.913545012f}, {-0.394744009f, 0.918790996f}, {-0.382683009f, 0.923879981f}, {-0.370557010f, 0.928810000f}, {-0.358368009f, 0.933579981f}, {-0.346116990f, 0.938190997f}, {-0.333806992f, 0.942641020f}, {-0.321438998f, 0.946929991f}, {-0.309017003f, 0.951057017f}, {-0.296541989f, 0.955020010f}, {-0.284015000f, 0.958819985f}, {-0.271439999f, 0.962454975f}, {-0.258819014f, 0.965925992f}, {-0.246152997f, 0.969231009f}, {-0.233445004f, 0.972370028f}, {-0.220697001f, 0.975341976f}, {-0.207911998f, 0.978147984f}, {-0.195089996f, 0.980785012f}, {-0.182236001f, 0.983255029f}, {-0.169349998f, 0.985556006f}, {-0.156434000f, 0.987688005f}, {-0.143492997f, 0.989651024f}, {-0.130526006f, 0.991445005f}, {-0.117536999f, 0.993067980f}, {-0.104528002f, 0.994521976f}, {-0.091502003f, 0.995805025f}, {-0.078459002f, 0.996917009f}, {-0.065403000f, 0.997859001f}, {-0.052336000f, 0.998629987f}, {-0.039260000f, 0.999229014f}, {-0.026177000f, 0.999656975f}, {-0.013090000f, 0.999913990f}, {-0.000000000f, 1.000000000f}, {0.013090000f, 0.999913990f}, {0.026177000f, 0.999656975f}, {0.039260000f, 0.999229014f}, {0.052336000f, 0.998629987f}, {0.065403000f, 0.997859001f}, {0.078459002f, 0.996917009f}, {0.091502003f, 0.995805025f}, {0.104528002f, 0.994521976f}, {0.117536999f, 0.993067980f}, {0.130526006f, 0.991445005f}, {0.143492997f, 0.989651024f}, {0.156434000f, 0.987688005f}, {0.169349998f, 0.985556006f}, {0.182236001f, 0.983255029f}, {0.195089996f, 0.980785012f}, {0.207911998f, 0.978147984f}, {0.220697001f, 0.975341976f}, {0.233445004f, 0.972370028f}, {0.246152997f, 0.969231009f}, {0.258819014f, 0.965925992f}, {0.271439999f, 0.962454975f}, {0.284015000f, 0.958819985f}, {0.296541989f, 0.955020010f}, {0.309017003f, 0.951057017f}, {0.321438998f, 0.946929991f}, {0.333806992f, 0.942641020f}, {0.346116990f, 0.938190997f}, {0.358368009f, 0.933579981f}, {0.370557010f, 0.928810000f}, {0.382683009f, 0.923879981f}, {0.394744009f, 0.918790996f}, {0.406737000f, 0.913545012f}, {0.418660015f, 0.908142984f}, {0.430510998f, 0.902585030f}, {0.442288995f, 0.896872997f}, {0.453990012f, 0.891007006f}, {0.465615004f, 0.884988010f}, {0.477158993f, 0.878817022f}, {0.488620996f, 0.872496009f}, {0.500000000f, 0.866024971f}, {0.511292994f, 0.859405994f}, {0.522499025f, 0.852639973f}, {0.533614993f, 0.845727980f}, {0.544638991f, 0.838671029f}, {0.555570006f, 0.831470013f}, {0.566406012f, 0.824126005f}, {0.577144980f, 0.816641986f}, {0.587785006f, 0.809017003f}, {0.598325014f, 0.801253974f}, {0.608761013f, 0.793353021f}, {0.619094014f, 0.785317004f}, {0.629320025f, 0.777145982f}, {0.639438987f, 0.768841982f}, {0.649447978f, 0.760406017f}, {0.659345984f, 0.751839995f}, {0.669130981f, 0.743144989f}, {0.678801000f, 0.734322011f}, {0.688355029f, 0.725373983f}, {0.697790027f, 0.716301978f}, {0.707107008f, 0.707107008f}, {0.716301978f, 0.697790027f}, {0.725373983f, 0.688355029f}, {0.734322011f, 0.678801000f}, {0.743144989f, 0.669130981f}, {0.751839995f, 0.659345984f}, {0.760406017f, 0.649447978f}, {0.768841982f, 0.639438987f}, {0.777145982f, 0.629320025f}, {0.785317004f, 0.619094014f}, {0.793353021f, 0.608761013f}, {0.801253974f, 0.598325014f}, {0.809017003f, 0.587785006f}, {0.816641986f, 0.577144980f}, {0.824126005f, 0.566406012f}, {0.831470013f, 0.555570006f}, {0.838671029f, 0.544638991f}, {0.845727980f, 0.533614993f}, {0.852639973f, 0.522499025f}, {0.859405994f, 0.511292994f}, {0.866024971f, 0.500000000f}, {0.872496009f, 0.488620996f}, {0.878817022f, 0.477158993f}, {0.884988010f, 0.465615004f}, {0.891007006f, 0.453990012f}, {0.896872997f, 0.442288995f}, {0.902585030f, 0.430510998f}, {0.908142984f, 0.418660015f}, {0.913545012f, 0.406737000f}, {0.918790996f, 0.394744009f}, {0.923879981f, 0.382683009f}, {0.928810000f, 0.370557010f}, {0.933579981f, 0.358368009f}, {0.938190997f, 0.346116990f}, {0.942641020f, 0.333806992f}, {0.946929991f, 0.321438998f}, {0.951057017f, 0.309017003f}, {0.955020010f, 0.296541989f}, {0.958819985f, 0.284015000f}, {0.962454975f, 0.271439999f}, {0.965925992f, 0.258819014f}, {0.969231009f, 0.246152997f}, {0.972370028f, 0.233445004f}, {0.975341976f, 0.220697001f}, {0.978147984f, 0.207911998f}, {0.980785012f, 0.195089996f}, {0.983255029f, 0.182236001f}, {0.985556006f, 0.169349998f}, {0.987688005f, 0.156434000f}, {0.989651024f, 0.143492997f}, {0.991445005f, 0.130526006f}, {0.993067980f, 0.117536999f}, {0.994521976f, 0.104528002f}, {0.995805025f, 0.091502003f}, {0.996917009f, 0.078459002f}, {0.997859001f, 0.065403000f}, {0.998629987f, 0.052336000f}, {0.999229014f, 0.039260000f}, {0.999656975f, 0.026177000f}, {0.999913990f, 0.013090000f}, };
+{1.0000000f, -0.0000000f}, {0.99991433f, -0.013089596f}, {0.99965732f, -0.026176948f}, {0.99922904f, -0.039259816f}, {0.99862953f, -0.052335956f}, {0.99785892f, -0.065403129f}, {0.99691733f, -0.078459096f}, {0.99580493f, -0.091501619f}, {0.99452190f, -0.10452846f}, {0.99306846f, -0.11753740f}, {0.99144486f, -0.13052619f}, {0.98965139f, -0.14349262f}, {0.98768834f, -0.15643447f}, {0.98555606f, -0.16934950f}, {0.98325491f, -0.18223553f}, {0.98078528f, -0.19509032f}, {0.97814760f, -0.20791169f}, {0.97534232f, -0.22069744f}, {0.97236992f, -0.23344536f}, {0.96923091f, -0.24615329f}, {0.96592583f, -0.25881905f}, {0.96245524f, -0.27144045f}, {0.95881973f, -0.28401534f}, {0.95501994f, -0.29654157f}, {0.95105652f, -0.30901699f}, {0.94693013f, -0.32143947f}, {0.94264149f, -0.33380686f}, {0.93819134f, -0.34611706f}, {0.93358043f, -0.35836795f}, {0.92880955f, -0.37055744f}, {0.92387953f, -0.38268343f}, {0.91879121f, -0.39474386f}, {0.91354546f, -0.40673664f}, {0.90814317f, -0.41865974f}, {0.90258528f, -0.43051110f}, {0.89687274f, -0.44228869f}, {0.89100652f, -0.45399050f}, {0.88498764f, -0.46561452f}, {0.87881711f, -0.47715876f}, {0.87249601f, -0.48862124f}, {0.86602540f, -0.50000000f}, {0.85940641f, -0.51129309f}, {0.85264016f, -0.52249856f}, {0.84572782f, -0.53361452f}, {0.83867057f, -0.54463904f}, {0.83146961f, -0.55557023f}, {0.82412619f, -0.56640624f}, {0.81664156f, -0.57714519f}, {0.80901699f, -0.58778525f}, {0.80125381f, -0.59832460f}, {0.79335334f, -0.60876143f}, {0.78531693f, -0.61909395f}, {0.77714596f, -0.62932039f}, {0.76884183f, -0.63943900f}, {0.76040597f, -0.64944805f}, {0.75183981f, -0.65934582f}, {0.74314483f, -0.66913061f}, {0.73432251f, -0.67880075f}, {0.72537437f, -0.68835458f}, {0.71630194f, -0.69779046f}, {0.70710678f, -0.70710678f}, {0.69779046f, -0.71630194f}, {0.68835458f, -0.72537437f}, {0.67880075f, -0.73432251f}, {0.66913061f, -0.74314483f}, {0.65934582f, -0.75183981f}, {0.64944805f, -0.76040597f}, {0.63943900f, -0.76884183f}, {0.62932039f, -0.77714596f}, {0.61909395f, -0.78531693f}, {0.60876143f, -0.79335334f}, {0.59832460f, -0.80125381f}, {0.58778525f, -0.80901699f}, {0.57714519f, -0.81664156f}, {0.56640624f, -0.82412619f}, {0.55557023f, -0.83146961f}, {0.54463904f, -0.83867057f}, {0.53361452f, -0.84572782f}, {0.52249856f, -0.85264016f}, {0.51129309f, -0.85940641f}, {0.50000000f, -0.86602540f}, {0.48862124f, -0.87249601f}, {0.47715876f, -0.87881711f}, {0.46561452f, -0.88498764f}, {0.45399050f, -0.89100652f}, {0.44228869f, -0.89687274f}, {0.43051110f, -0.90258528f}, {0.41865974f, -0.90814317f}, {0.40673664f, -0.91354546f}, {0.39474386f, -0.91879121f}, {0.38268343f, -0.92387953f}, {0.37055744f, -0.92880955f}, {0.35836795f, -0.93358043f}, {0.34611706f, -0.93819134f}, {0.33380686f, -0.94264149f}, {0.32143947f, -0.94693013f}, {0.30901699f, -0.95105652f}, {0.29654157f, -0.95501994f}, {0.28401534f, -0.95881973f}, {0.27144045f, -0.96245524f}, {0.25881905f, -0.96592583f}, {0.24615329f, -0.96923091f}, {0.23344536f, -0.97236992f}, {0.22069744f, -0.97534232f}, {0.20791169f, -0.97814760f}, {0.19509032f, -0.98078528f}, {0.18223553f, -0.98325491f}, {0.16934950f, -0.98555606f}, {0.15643447f, -0.98768834f}, {0.14349262f, -0.98965139f}, {0.13052619f, -0.99144486f}, {0.11753740f, -0.99306846f}, {0.10452846f, -0.99452190f}, {0.091501619f, -0.99580493f}, {0.078459096f, -0.99691733f}, {0.065403129f, -0.99785892f}, {0.052335956f, -0.99862953f}, {0.039259816f, -0.99922904f}, {0.026176948f, -0.99965732f}, {0.013089596f, -0.99991433f}, {6.1230318e-17f, -1.0000000f}, {-0.013089596f, -0.99991433f}, {-0.026176948f, -0.99965732f}, {-0.039259816f, -0.99922904f}, {-0.052335956f, -0.99862953f}, {-0.065403129f, -0.99785892f}, {-0.078459096f, -0.99691733f}, {-0.091501619f, -0.99580493f}, {-0.10452846f, -0.99452190f}, {-0.11753740f, -0.99306846f}, {-0.13052619f, -0.99144486f}, {-0.14349262f, -0.98965139f}, {-0.15643447f, -0.98768834f}, {-0.16934950f, -0.98555606f}, {-0.18223553f, -0.98325491f}, {-0.19509032f, -0.98078528f}, {-0.20791169f, -0.97814760f}, {-0.22069744f, -0.97534232f}, {-0.23344536f, -0.97236992f}, {-0.24615329f, -0.96923091f}, {-0.25881905f, -0.96592583f}, {-0.27144045f, -0.96245524f}, {-0.28401534f, -0.95881973f}, {-0.29654157f, -0.95501994f}, {-0.30901699f, -0.95105652f}, {-0.32143947f, -0.94693013f}, {-0.33380686f, -0.94264149f}, {-0.34611706f, -0.93819134f}, {-0.35836795f, -0.93358043f}, {-0.37055744f, -0.92880955f}, {-0.38268343f, -0.92387953f}, {-0.39474386f, -0.91879121f}, {-0.40673664f, -0.91354546f}, {-0.41865974f, -0.90814317f}, {-0.43051110f, -0.90258528f}, {-0.44228869f, -0.89687274f}, {-0.45399050f, -0.89100652f}, {-0.46561452f, -0.88498764f}, {-0.47715876f, -0.87881711f}, {-0.48862124f, -0.87249601f}, {-0.50000000f, -0.86602540f}, {-0.51129309f, -0.85940641f}, {-0.52249856f, -0.85264016f}, {-0.53361452f, -0.84572782f}, {-0.54463904f, -0.83867057f}, {-0.55557023f, -0.83146961f}, {-0.56640624f, -0.82412619f}, {-0.57714519f, -0.81664156f}, {-0.58778525f, -0.80901699f}, {-0.59832460f, -0.80125381f}, {-0.60876143f, -0.79335334f}, {-0.61909395f, -0.78531693f}, {-0.62932039f, -0.77714596f}, {-0.63943900f, -0.76884183f}, {-0.64944805f, -0.76040597f}, {-0.65934582f, -0.75183981f}, {-0.66913061f, -0.74314483f}, {-0.67880075f, -0.73432251f}, {-0.68835458f, -0.72537437f}, {-0.69779046f, -0.71630194f}, {-0.70710678f, -0.70710678f}, {-0.71630194f, -0.69779046f}, {-0.72537437f, -0.68835458f}, {-0.73432251f, -0.67880075f}, {-0.74314483f, -0.66913061f}, {-0.75183981f, -0.65934582f}, {-0.76040597f, -0.64944805f}, {-0.76884183f, -0.63943900f}, {-0.77714596f, -0.62932039f}, {-0.78531693f, -0.61909395f}, {-0.79335334f, -0.60876143f}, {-0.80125381f, -0.59832460f}, {-0.80901699f, -0.58778525f}, {-0.81664156f, -0.57714519f}, {-0.82412619f, -0.56640624f}, {-0.83146961f, -0.55557023f}, {-0.83867057f, -0.54463904f}, {-0.84572782f, -0.53361452f}, {-0.85264016f, -0.52249856f}, {-0.85940641f, -0.51129309f}, {-0.86602540f, -0.50000000f}, {-0.87249601f, -0.48862124f}, {-0.87881711f, -0.47715876f}, {-0.88498764f, -0.46561452f}, {-0.89100652f, -0.45399050f}, {-0.89687274f, -0.44228869f}, {-0.90258528f, -0.43051110f}, {-0.90814317f, -0.41865974f}, {-0.91354546f, -0.40673664f}, {-0.91879121f, -0.39474386f}, {-0.92387953f, -0.38268343f}, {-0.92880955f, -0.37055744f}, {-0.93358043f, -0.35836795f}, {-0.93819134f, -0.34611706f}, {-0.94264149f, -0.33380686f}, {-0.94693013f, -0.32143947f}, {-0.95105652f, -0.30901699f}, {-0.95501994f, -0.29654157f}, {-0.95881973f, -0.28401534f}, {-0.96245524f, -0.27144045f}, {-0.96592583f, -0.25881905f}, {-0.96923091f, -0.24615329f}, {-0.97236992f, -0.23344536f}, {-0.97534232f, -0.22069744f}, {-0.97814760f, -0.20791169f}, {-0.98078528f, -0.19509032f}, {-0.98325491f, -0.18223553f}, {-0.98555606f, -0.16934950f}, {-0.98768834f, -0.15643447f}, {-0.98965139f, -0.14349262f}, {-0.99144486f, -0.13052619f}, {-0.99306846f, -0.11753740f}, {-0.99452190f, -0.10452846f}, {-0.99580493f, -0.091501619f}, {-0.99691733f, -0.078459096f}, {-0.99785892f, -0.065403129f}, {-0.99862953f, -0.052335956f}, {-0.99922904f, -0.039259816f}, {-0.99965732f, -0.026176948f}, {-0.99991433f, -0.013089596f}, {-1.0000000f, -1.2246064e-16f}, {-0.99991433f, 0.013089596f}, {-0.99965732f, 0.026176948f}, {-0.99922904f, 0.039259816f}, {-0.99862953f, 0.052335956f}, {-0.99785892f, 0.065403129f}, {-0.99691733f, 0.078459096f}, {-0.99580493f, 0.091501619f}, {-0.99452190f, 0.10452846f}, {-0.99306846f, 0.11753740f}, {-0.99144486f, 0.13052619f}, {-0.98965139f, 0.14349262f}, {-0.98768834f, 0.15643447f}, {-0.98555606f, 0.16934950f}, {-0.98325491f, 0.18223553f}, {-0.98078528f, 0.19509032f}, {-0.97814760f, 0.20791169f}, {-0.97534232f, 0.22069744f}, {-0.97236992f, 0.23344536f}, {-0.96923091f, 0.24615329f}, {-0.96592583f, 0.25881905f}, {-0.96245524f, 0.27144045f}, {-0.95881973f, 0.28401534f}, {-0.95501994f, 0.29654157f}, {-0.95105652f, 0.30901699f}, {-0.94693013f, 0.32143947f}, {-0.94264149f, 0.33380686f}, {-0.93819134f, 0.34611706f}, {-0.93358043f, 0.35836795f}, {-0.92880955f, 0.37055744f}, {-0.92387953f, 0.38268343f}, {-0.91879121f, 0.39474386f}, {-0.91354546f, 0.40673664f}, {-0.90814317f, 0.41865974f}, {-0.90258528f, 0.43051110f}, {-0.89687274f, 0.44228869f}, {-0.89100652f, 0.45399050f}, {-0.88498764f, 0.46561452f}, {-0.87881711f, 0.47715876f}, {-0.87249601f, 0.48862124f}, {-0.86602540f, 0.50000000f}, {-0.85940641f, 0.51129309f}, {-0.85264016f, 0.52249856f}, {-0.84572782f, 0.53361452f}, {-0.83867057f, 0.54463904f}, {-0.83146961f, 0.55557023f}, {-0.82412619f, 0.56640624f}, {-0.81664156f, 0.57714519f}, {-0.80901699f, 0.58778525f}, {-0.80125381f, 0.59832460f}, {-0.79335334f, 0.60876143f}, {-0.78531693f, 0.61909395f}, {-0.77714596f, 0.62932039f}, {-0.76884183f, 0.63943900f}, {-0.76040597f, 0.64944805f}, {-0.75183981f, 0.65934582f}, {-0.74314483f, 0.66913061f}, {-0.73432251f, 0.67880075f}, {-0.72537437f, 0.68835458f}, {-0.71630194f, 0.69779046f}, {-0.70710678f, 0.70710678f}, {-0.69779046f, 0.71630194f}, {-0.68835458f, 0.72537437f}, {-0.67880075f, 0.73432251f}, {-0.66913061f, 0.74314483f}, {-0.65934582f, 0.75183981f}, {-0.64944805f, 0.76040597f}, {-0.63943900f, 0.76884183f}, {-0.62932039f, 0.77714596f}, {-0.61909395f, 0.78531693f}, {-0.60876143f, 0.79335334f}, {-0.59832460f, 0.80125381f}, {-0.58778525f, 0.80901699f}, {-0.57714519f, 0.81664156f}, {-0.56640624f, 0.82412619f}, {-0.55557023f, 0.83146961f}, {-0.54463904f, 0.83867057f}, {-0.53361452f, 0.84572782f}, {-0.52249856f, 0.85264016f}, {-0.51129309f, 0.85940641f}, {-0.50000000f, 0.86602540f}, {-0.48862124f, 0.87249601f}, {-0.47715876f, 0.87881711f}, {-0.46561452f, 0.88498764f}, {-0.45399050f, 0.89100652f}, {-0.44228869f, 0.89687274f}, {-0.43051110f, 0.90258528f}, {-0.41865974f, 0.90814317f}, {-0.40673664f, 0.91354546f}, {-0.39474386f, 0.91879121f}, {-0.38268343f, 0.92387953f}, {-0.37055744f, 0.92880955f}, {-0.35836795f, 0.93358043f}, {-0.34611706f, 0.93819134f}, {-0.33380686f, 0.94264149f}, {-0.32143947f, 0.94693013f}, {-0.30901699f, 0.95105652f}, {-0.29654157f, 0.95501994f}, {-0.28401534f, 0.95881973f}, {-0.27144045f, 0.96245524f}, {-0.25881905f, 0.96592583f}, {-0.24615329f, 0.96923091f}, {-0.23344536f, 0.97236992f}, {-0.22069744f, 0.97534232f}, {-0.20791169f, 0.97814760f}, {-0.19509032f, 0.98078528f}, {-0.18223553f, 0.98325491f}, {-0.16934950f, 0.98555606f}, {-0.15643447f, 0.98768834f}, {-0.14349262f, 0.98965139f}, {-0.13052619f, 0.99144486f}, {-0.11753740f, 0.99306846f}, {-0.10452846f, 0.99452190f}, {-0.091501619f, 0.99580493f}, {-0.078459096f, 0.99691733f}, {-0.065403129f, 0.99785892f}, {-0.052335956f, 0.99862953f}, {-0.039259816f, 0.99922904f}, {-0.026176948f, 0.99965732f}, {-0.013089596f, 0.99991433f}, {-1.8369095e-16f, 1.0000000f}, {0.013089596f, 0.99991433f}, {0.026176948f, 0.99965732f}, {0.039259816f, 0.99922904f}, {0.052335956f, 0.99862953f}, {0.065403129f, 0.99785892f}, {0.078459096f, 0.99691733f}, {0.091501619f, 0.99580493f}, {0.10452846f, 0.99452190f}, {0.11753740f, 0.99306846f}, {0.13052619f, 0.99144486f}, {0.14349262f, 0.98965139f}, {0.15643447f, 0.98768834f}, {0.16934950f, 0.98555606f}, {0.18223553f, 0.98325491f}, {0.19509032f, 0.98078528f}, {0.20791169f, 0.97814760f}, {0.22069744f, 0.97534232f}, {0.23344536f, 0.97236992f}, {0.24615329f, 0.96923091f}, {0.25881905f, 0.96592583f}, {0.27144045f, 0.96245524f}, {0.28401534f, 0.95881973f}, {0.29654157f, 0.95501994f}, {0.30901699f, 0.95105652f}, {0.32143947f, 0.94693013f}, {0.33380686f, 0.94264149f}, {0.34611706f, 0.93819134f}, {0.35836795f, 0.93358043f}, {0.37055744f, 0.92880955f}, {0.38268343f, 0.92387953f}, {0.39474386f, 0.91879121f}, {0.40673664f, 0.91354546f}, {0.41865974f, 0.90814317f}, {0.43051110f, 0.90258528f}, {0.44228869f, 0.89687274f}, {0.45399050f, 0.89100652f}, {0.46561452f, 0.88498764f}, {0.47715876f, 0.87881711f}, {0.48862124f, 0.87249601f}, {0.50000000f, 0.86602540f}, {0.51129309f, 0.85940641f}, {0.52249856f, 0.85264016f}, {0.53361452f, 0.84572782f}, {0.54463904f, 0.83867057f}, {0.55557023f, 0.83146961f}, {0.56640624f, 0.82412619f}, {0.57714519f, 0.81664156f}, {0.58778525f, 0.80901699f}, {0.59832460f, 0.80125381f}, {0.60876143f, 0.79335334f}, {0.61909395f, 0.78531693f}, {0.62932039f, 0.77714596f}, {0.63943900f, 0.76884183f}, {0.64944805f, 0.76040597f}, {0.65934582f, 0.75183981f}, {0.66913061f, 0.74314483f}, {0.67880075f, 0.73432251f}, {0.68835458f, 0.72537437f}, {0.69779046f, 0.71630194f}, {0.70710678f, 0.70710678f}, {0.71630194f, 0.69779046f}, {0.72537437f, 0.68835458f}, {0.73432251f, 0.67880075f}, {0.74314483f, 0.66913061f}, {0.75183981f, 0.65934582f}, {0.76040597f, 0.64944805f}, {0.76884183f, 0.63943900f}, {0.77714596f, 0.62932039f}, {0.78531693f, 0.61909395f}, {0.79335334f, 0.60876143f}, {0.80125381f, 0.59832460f}, {0.80901699f, 0.58778525f}, {0.81664156f, 0.57714519f}, {0.82412619f, 0.56640624f}, {0.83146961f, 0.55557023f}, {0.83867057f, 0.54463904f}, {0.84572782f, 0.53361452f}, {0.85264016f, 0.52249856f}, {0.85940641f, 0.51129309f}, {0.86602540f, 0.50000000f}, {0.87249601f, 0.48862124f}, {0.87881711f, 0.47715876f}, {0.88498764f, 0.46561452f}, {0.89100652f, 0.45399050f}, {0.89687274f, 0.44228869f}, {0.90258528f, 0.43051110f}, {0.90814317f, 0.41865974f}, {0.91354546f, 0.40673664f}, {0.91879121f, 0.39474386f}, {0.92387953f, 0.38268343f}, {0.92880955f, 0.37055744f}, {0.93358043f, 0.35836795f}, {0.93819134f, 0.34611706f}, {0.94264149f, 0.33380686f}, {0.94693013f, 0.32143947f}, {0.95105652f, 0.30901699f}, {0.95501994f, 0.29654157f}, {0.95881973f, 0.28401534f}, {0.96245524f, 0.27144045f}, {0.96592583f, 0.25881905f}, {0.96923091f, 0.24615329f}, {0.97236992f, 0.23344536f}, {0.97534232f, 0.22069744f}, {0.97814760f, 0.20791169f}, {0.98078528f, 0.19509032f}, {0.98325491f, 0.18223553f}, {0.98555606f, 0.16934950f}, {0.98768834f, 0.15643447f}, {0.98965139f, 0.14349262f}, {0.99144486f, 0.13052619f}, {0.99306846f, 0.11753740f}, {0.99452190f, 0.10452846f}, {0.99580493f, 0.091501619f}, {0.99691733f, 0.078459096f}, {0.99785892f, 0.065403129f}, {0.99862953f, 0.052335956f}, {0.99922904f, 0.039259816f}, {0.99965732f, 0.026176948f}, {0.99991433f, 0.013089596f}, };
 #ifndef FFT_BITREV480
 #define FFT_BITREV480
 static const opus_int16 fft_bitrev480[480] = {
@@ -57,7 +57,7 @@ static const opus_int16 fft_bitrev60[60] = {
 #define FFT_STATE48000_960_0
 static const kiss_fft_state fft_state48000_960_0 = {
 480,   /* nfft */
-0.002083000f,  /* scale */
+0.002083333f,  /* scale */
 -1,    /* shift */
 {4, 120, 4, 30, 2, 15, 3, 5, 5, 1, 0, 0, 0, 0, 0, 0, },        /* factors */
 fft_bitrev480, /* bitrev */
@@ -69,7 +69,7 @@ fft_twiddles48000_960,        /* bitrev */
 #define FFT_STATE48000_960_1
 static const kiss_fft_state fft_state48000_960_1 = {
 240,   /* nfft */
-0.004167000f,  /* scale */
+0.004166667f,  /* scale */
 1,     /* shift */
 {4, 60, 4, 15, 3, 5, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, },  /* factors */
 fft_bitrev240, /* bitrev */
@@ -81,7 +81,7 @@ fft_twiddles48000_960,        /* bitrev */
 #define FFT_STATE48000_960_2
 static const kiss_fft_state fft_state48000_960_2 = {
 120,   /* nfft */
-0.008333000f,  /* scale */
+0.008333333f,  /* scale */
 2,     /* shift */
 {4, 30, 2, 15, 3, 5, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, },  /* factors */
 fft_bitrev120, /* bitrev */
@@ -93,7 +93,7 @@ fft_twiddles48000_960,        /* bitrev */
 #define FFT_STATE48000_960_3
 static const kiss_fft_state fft_state48000_960_3 = {
 60,    /* nfft */
-0.016666999f,  /* scale */
+0.016666667f,  /* scale */
 3,     /* shift */
 {4, 15, 3, 5, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },   /* factors */
 fft_bitrev60,  /* bitrev */
@@ -106,7 +106,7 @@ fft_twiddles48000_960,      /* bitrev */
 #ifndef MDCT_TWIDDLES960
 #define MDCT_TWIDDLES960
 static const opus_val16 mdct_twiddles960[481] = {
-1.000000000f, 0.999994993f, 0.999979019f, 0.999952018f, 0.999913990f, 0.999866009f, 0.999807000f, 0.999737978f, 0.999656975f, 0.999566019f, 0.999464989f, 0.999351978f, 0.999229014f, 0.999095023f, 0.998951018f, 0.998794973f, 0.998629987f, 0.998453021f, 0.998265982f, 0.998067975f, 0.997859001f, 0.997640014f, 0.997408986f, 0.997169018f, 0.996917009f, 0.996654987f, 0.996381998f, 0.996098995f, 0.995805025f, 0.995500028f, 0.995185018f, 0.994858980f, 0.994521976f, 0.994174004f, 0.993816018f, 0.993448019f, 0.993067980f, 0.992679000f, 0.992277980f, 0.991867006f, 0.991445005f, 0.991011977f, 0.990568995f, 0.990116000f, 0.989651024f, 0.989176989f, 0.988690972f, 0.988195002f, 0.987688005f, 0.987170994f, 0.986643016f, 0.986105025f, 0.985556006f, 0.984996974f, 0.984426975f, 0.983846009f, 0.983255029f, 0.982653022f, 0.982041001f, 0.981418014f, 0.980785012f, 0.980141997f, 0.979487002f, 0.978823006f, 0.978147984f, 0.977461994f, 0.976765990f, 0.976059020f, 0.975341976f, 0.974614978f, 0.973877013f, 0.973128974f, 0.972370028f, 0.971601009f, 0.970821023f, 0.970031023f, 0.969231009f, 0.968420029f, 0.967598975f, 0.966768026f, 0.965925992f, 0.965074003f, 0.964210987f, 0.963338017f, 0.962454975f, 0.961561978f, 0.960658014f, 0.959743977f, 0.958819985f, 0.957885027f, 0.956939995f, 0.955985010f, 0.955020010f, 0.954043984f, 0.953059018f, 0.952063024f, 0.951057017f, 0.950039983f, 0.949014008f, 0.947977006f, 0.946929991f, 0.945873022f, 0.944805980f, 0.943728983f, 0.942641020f, 0.941543996f, 0.940437019f, 0.939319015f, 0.938190997f, 0.937053978f, 0.935905993f, 0.934747994f, 0.933579981f, 0.932403028f, 0.931214988f, 0.930016994f, 0.928810000f, 0.927591980f, 0.926364005f, 0.925127029f, 0.923879981f, 0.922622025f, 0.921355009f, 0.920077980f, 0.918790996f, 0.917493999f, 0.916188002f, 0.914871991f, 0.913545012f, 0.912209988f, 0.910863996f, 0.909507990f, 0.908142984f, 0.906768024f, 0.905384004f, 0.903989017f, 0.902585030f, 0.901171982f, 0.899748027f, 0.898315012f, 0.896872997f, 0.895421028f, 0.893958986f, 0.892486989f, 0.891007006f, 0.889515996f, 0.888015985f, 0.886506975f, 0.884988010f, 0.883458972f, 0.881920993f, 0.880374014f, 0.878817022f, 0.877251029f, 0.875675023f, 0.874090016f, 0.872496009f, 0.870891988f, 0.869279027f, 0.867657006f, 0.866024971f, 0.864385009f, 0.862734020f, 0.861074984f, 0.859405994f, 0.857729018f, 0.856042027f, 0.854345024f, 0.852639973f, 0.850925982f, 0.849201977f, 0.847469985f, 0.845727980f, 0.843976974f, 0.842217028f, 0.840448022f, 0.838671029f, 0.836884022f, 0.835088015f, 0.833283007f, 0.831470013f, 0.829647005f, 0.827816010f, 0.825975001f, 0.824126005f, 0.822268009f, 0.820401013f, 0.818526030f, 0.816641986f, 0.814747989f, 0.812847018f, 0.810935974f, 0.809017003f, 0.807088971f, 0.805153012f, 0.803207994f, 0.801253974f, 0.799291015f, 0.797321022f, 0.795341015f, 0.793353021f, 0.791356981f, 0.789352000f, 0.787338972f, 0.785317004f, 0.783286989f, 0.781247973f, 0.779200971f, 0.777145982f, 0.775081992f, 0.773010015f, 0.770929992f, 0.768841982f, 0.766744971f, 0.764639974f, 0.762526989f, 0.760406017f, 0.758276999f, 0.756138980f, 0.753993988f, 0.751839995f, 0.749678016f, 0.747507989f, 0.745330989f, 0.743144989f, 0.740951002f, 0.738749981f, 0.736540020f, 0.734322011f, 0.732097030f, 0.729864001f, 0.727622986f, 0.725373983f, 0.723118007f, 0.720853984f, 0.718581975f, 0.716301978f, 0.714015007f, 0.711719990f, 0.709416986f, 0.707107008f, 0.704788983f, 0.702463984f, 0.700130999f, 0.697790027f, 0.695442975f, 0.693086982f, 0.690725029f, 0.688355029f, 0.685976982f, 0.683592021f, 0.681200027f, 0.678801000f, 0.676393986f, 0.673979998f, 0.671558976f, 0.669130981f, 0.666694999f, 0.664251983f, 0.661803007f, 0.659345984f, 0.656881988f, 0.654411018f, 0.651933014f, 0.649447978f, 0.646956027f, 0.644456983f, 0.641951978f, 0.639438987f, 0.636919975f, 0.634392977f, 0.631860018f, 0.629320025f, 0.626774013f, 0.624221027f, 0.621661007f, 0.619094014f, 0.616521001f, 0.613941014f, 0.611353993f, 0.608761013f, 0.606162012f, 0.603555977f, 0.600943983f, 0.598325014f, 0.595699012f, 0.593068004f, 0.590430021f, 0.587785006f, 0.585134983f, 0.582477987f, 0.579814970f, 0.577144980f, 0.574469984f, 0.571788013f, 0.569100022f, 0.566406012f, 0.563705981f, 0.560999990f, 0.558287978f, 0.555570006f, 0.552846014f, 0.550116003f, 0.547380984f, 0.544638991f, 0.541891992f, 0.539138019f, 0.536378980f, 0.533614993f, 0.530843973f, 0.528068006f, 0.525286019f, 0.522499025f, 0.519706011f, 0.516906977f, 0.514102995f, 0.511292994f, 0.508477986f, 0.505657017f, 0.502830982f, 0.500000000f, 0.497162998f, 0.494320989f, 0.491474003f, 0.488620996f, 0.485763013f, 0.482899994f, 0.480031997f, 0.477158993f, 0.474280000f, 0.471397012f, 0.468508005f, 0.465615004f, 0.462716013f, 0.459811985f, 0.456903994f, 0.453990012f, 0.451072007f, 0.448148996f, 0.445221007f, 0.442288995f, 0.439350992f, 0.436408997f, 0.433463007f, 0.430510998f, 0.427554995f, 0.424594998f, 0.421629012f, 0.418660015f, 0.415686011f, 0.412707001f, 0.409723997f, 0.406737000f, 0.403744996f, 0.400748998f, 0.397747993f, 0.394744009f, 0.391734987f, 0.388722003f, 0.385704994f, 0.382683009f, 0.379658014f, 0.376628011f, 0.373594999f, 0.370557010f, 0.367516011f, 0.364470989f, 0.361420989f, 0.358368009f, 0.355311006f, 0.352250010f, 0.349184990f, 0.346116990f, 0.343044996f, 0.339969009f, 0.336890012f, 0.333806992f, 0.330720007f, 0.327630013f, 0.324537009f, 0.321438998f, 0.318338990f, 0.315234989f, 0.312128007f, 0.309017003f, 0.305902988f, 0.302785993f, 0.299665004f, 0.296541989f, 0.293415010f, 0.290284991f, 0.287151992f, 0.284015000f, 0.280876011f, 0.277734011f, 0.274589002f, 0.271439999f, 0.268289000f, 0.265134990f, 0.261979014f, 0.258819014f, 0.255656987f, 0.252492011f, 0.249323994f, 0.246152997f, 0.242980003f, 0.239804000f, 0.236625999f, 0.233445004f, 0.230261996f, 0.227075994f, 0.223887995f, 0.220697001f, 0.217503995f, 0.214309007f, 0.211111993f, 0.207911998f, 0.204710007f, 0.201505005f, 0.198299006f, 0.195089996f, 0.191880003f, 0.188666999f, 0.185451999f, 0.182236001f, 0.179017007f, 0.175796002f, 0.172573999f, 0.169349998f, 0.166123003f, 0.162894994f, 0.159666002f, 0.156434000f, 0.153200999f, 0.149967000f, 0.146730006f, 0.143492997f, 0.140253007f, 0.137012005f, 0.133770004f, 0.130526006f, 0.127280995f, 0.124034002f, 0.120787002f, 0.117536999f, 0.114286996f, 0.111034997f, 0.107781999f, 0.104528002f, 0.101273000f, 0.098017000f, 0.094760001f, 0.091502003f, 0.088242002f, 0.084982000f, 0.081721000f, 0.078459002f, 0.075195998f, 0.071933001f, 0.068668000f, 0.065403000f, 0.062137000f, 0.058871001f, 0.055604000f, 0.052336000f, 0.049068000f, 0.045798998f, 0.042530000f, 0.039260000f, 0.035990000f, 0.032719001f, 0.029448001f, 0.026177000f, 0.022905000f, 0.019633999f, 0.016362000f, 0.013090000f, 0.009817000f, 0.006545000f, 0.003272000f, 0.000000000f, };
+1.0000000f, 0.99999465f, 0.99997858f, 0.99995181f, 0.99991433f, 0.99986614f, 0.99980724f, 0.99973764f, 0.99965732f, 0.99956631f, 0.99946459f, 0.99935216f, 0.99922904f, 0.99909521f, 0.99895068f, 0.99879546f, 0.99862953f, 0.99845292f, 0.99826561f, 0.99806761f, 0.99785892f, 0.99763955f, 0.99740949f, 0.99716875f, 0.99691733f, 0.99665524f, 0.99638247f, 0.99609903f, 0.99580493f, 0.99550016f, 0.99518473f, 0.99485864f, 0.99452190f, 0.99417450f, 0.99381646f, 0.99344778f, 0.99306846f, 0.99267850f, 0.99227791f, 0.99186670f, 0.99144486f, 0.99101241f, 0.99056934f, 0.99011566f, 0.98965139f, 0.98917651f, 0.98869104f, 0.98819498f, 0.98768834f, 0.98717112f, 0.98664333f, 0.98610497f, 0.98555606f, 0.98499659f, 0.98442657f, 0.98384600f, 0.98325491f, 0.98265328f, 0.98204113f, 0.98141846f, 0.98078528f, 0.98014159f, 0.97948742f, 0.97882275f, 0.97814760f, 0.97746197f, 0.97676588f, 0.97605933f, 0.97534232f, 0.97461487f, 0.97387698f, 0.97312866f, 0.97236992f, 0.97160077f, 0.97082121f, 0.97003125f, 0.96923091f, 0.96842019f, 0.96759909f, 0.96676764f, 0.96592582f, 0.96507367f, 0.96421118f, 0.96333837f, 0.96245523f, 0.96156180f, 0.96065806f, 0.95974403f, 0.95881973f, 0.95788517f, 0.95694034f, 0.95598526f, 0.95501995f, 0.95404440f, 0.95305864f, 0.95206267f, 0.95105651f, 0.95004016f, 0.94901364f, 0.94797697f, 0.94693013f, 0.94587315f, 0.94480604f, 0.94372882f, 0.94264149f, 0.94154406f, 0.94043656f, 0.93931897f, 0.93819133f, 0.93705365f, 0.93590592f, 0.93474818f, 0.93358042f, 0.93240268f, 0.93121493f, 0.93001722f, 0.92880955f, 0.92759193f, 0.92636438f, 0.92512690f, 0.92387953f, 0.92262225f, 0.92135509f, 0.92007809f, 0.91879121f, 0.91749449f, 0.91618795f, 0.91487161f, 0.91354545f, 0.91220952f, 0.91086382f, 0.90950836f, 0.90814316f, 0.90676824f, 0.90538363f, 0.90398929f, 0.90258528f, 0.90117161f, 0.89974828f, 0.89831532f, 0.89687273f, 0.89542055f, 0.89395877f, 0.89248742f, 0.89100652f, 0.88951606f, 0.88801610f, 0.88650661f, 0.88498764f, 0.88345918f, 0.88192125f, 0.88037390f, 0.87881711f, 0.87725090f, 0.87567531f, 0.87409035f, 0.87249599f, 0.87089232f, 0.86927933f, 0.86765699f, 0.86602540f, 0.86438453f, 0.86273437f, 0.86107503f, 0.85940641f, 0.85772862f, 0.85604161f, 0.85434547f, 0.85264014f, 0.85092572f, 0.84920218f, 0.84746955f, 0.84572781f, 0.84397704f, 0.84221721f, 0.84044838f, 0.83867056f, 0.83688375f, 0.83508799f, 0.83328325f, 0.83146961f, 0.82964704f, 0.82781562f, 0.82597530f, 0.82412620f, 0.82226820f, 0.82040144f, 0.81852589f, 0.81664154f, 0.81474847f, 0.81284665f, 0.81093620f, 0.80901698f, 0.80708914f, 0.80515262f, 0.80320752f, 0.80125378f, 0.79929149f, 0.79732067f, 0.79534125f, 0.79335335f, 0.79135691f, 0.78935204f, 0.78733867f, 0.78531691f, 0.78328674f, 0.78124818f, 0.77920122f, 0.77714595f, 0.77508232f, 0.77301043f, 0.77093026f, 0.76884183f, 0.76674517f, 0.76464026f, 0.76252720f, 0.76040593f, 0.75827656f, 0.75613907f, 0.75399349f, 0.75183978f, 0.74967807f, 0.74750833f, 0.74533054f, 0.74314481f, 0.74095112f, 0.73874950f, 0.73653993f, 0.73432251f, 0.73209718f, 0.72986405f, 0.72762307f, 0.72537438f, 0.72311787f, 0.72085359f, 0.71858162f, 0.71630192f, 0.71401459f, 0.71171956f, 0.70941701f, 0.70710677f, 0.70478900f, 0.70246363f, 0.70013079f, 0.69779041f, 0.69544260f, 0.69308738f, 0.69072466f, 0.68835458f, 0.68597709f, 0.68359229f, 0.68120013f, 0.67880072f, 0.67639404f, 0.67398011f, 0.67155892f, 0.66913059f, 0.66669509f, 0.66425240f, 0.66180265f, 0.65934581f, 0.65688191f, 0.65441092f, 0.65193298f, 0.64944801f, 0.64695613f, 0.64445727f, 0.64195160f, 0.63943902f, 0.63691954f, 0.63439328f, 0.63186019f, 0.62932037f, 0.62677377f, 0.62422055f, 0.62166055f, 0.61909394f, 0.61652065f, 0.61394081f, 0.61135435f, 0.60876139f, 0.60616195f, 0.60355593f, 0.60094349f, 0.59832457f, 0.59569929f, 0.59306758f, 0.59042957f, 0.58778523f, 0.58513460f, 0.58247766f, 0.57981452f, 0.57714518f, 0.57446961f, 0.57178793f, 0.56910013f, 0.56640624f, 0.56370623f, 0.56100023f, 0.55828818f, 0.55557020f, 0.55284627f, 0.55011641f, 0.54738067f, 0.54463901f, 0.54189157f, 0.53913828f, 0.53637921f, 0.53361450f, 0.53084398f, 0.52806787f, 0.52528601f, 0.52249852f, 0.51970543f, 0.51690688f, 0.51410279f, 0.51129310f, 0.50847793f, 0.50565732f, 0.50283139f, 0.49999997f, 0.49716321f, 0.49432122f, 0.49147383f, 0.48862118f, 0.48576340f, 0.48290042f, 0.48003216f, 0.47715876f, 0.47428025f, 0.47139677f, 0.46850813f, 0.46561448f, 0.46271584f, 0.45981235f, 0.45690383f, 0.45399042f, 0.45107214f, 0.44814915f, 0.44522124f, 0.44228868f, 0.43935137f, 0.43640926f, 0.43346247f, 0.43051104f, 0.42755511f, 0.42459449f, 0.42162932f, 0.41865964f, 0.41568558f, 0.41270697f, 0.40972393f, 0.40673661f, 0.40374494f, 0.40074884f, 0.39774844f, 0.39474390f, 0.39173501f, 0.38872193f, 0.38570469f, 0.38268343f, 0.37965796f, 0.37662842f, 0.37359496f, 0.37055739f, 0.36751585f, 0.36447038f, 0.36142122f, 0.35836797f, 0.35531089f, 0.35225000f, 0.34918544f, 0.34611704f, 0.34304493f, 0.33996926f, 0.33688983f, 0.33380680f, 0.33072019f, 0.32763015f, 0.32453650f, 0.32143936f, 0.31833890f, 0.31523503f, 0.31212767f, 0.30901696f, 0.30590306f, 0.30278577f, 0.29966524f, 0.29654150f, 0.29341470f, 0.29028464f, 0.28715147f, 0.28401522f, 0.28087605f, 0.27773376f, 0.27458861f, 0.27144052f, 0.26828940f, 0.26513541f, 0.26197859f, 0.25881907f, 0.25565666f, 0.25249152f, 0.24932367f, 0.24615327f, 0.24298012f, 0.23980436f, 0.23662604f, 0.23344530f, 0.23026206f, 0.22707623f, 0.22388809f, 0.22069744f, 0.21750443f, 0.21430908f, 0.21111156f, 0.20791165f, 0.20470953f, 0.20150520f, 0.19829884f, 0.19509024f, 0.19187955f, 0.18866692f, 0.18545227f, 0.18223552f, 0.17901681f, 0.17579631f, 0.17257380f, 0.16934945f, 0.16612328f, 0.16289546f, 0.15966577f, 0.15643437f, 0.15320141f, 0.14996669f, 0.14673037f, 0.14349260f, 0.14025329f, 0.13701235f, 0.13376995f, 0.13052612f, 0.12728101f, 0.12403442f, 0.12078650f, 0.11753740f, 0.11428693f, 0.11103523f, 0.10778234f, 0.10452842f, 0.10127326f, 0.098017137f, 0.094759842f, 0.091501652f, 0.088242363f, 0.084982129f, 0.081721103f, 0.078459084f, 0.075196224f, 0.071932560f, 0.068668243f, 0.065403073f, 0.062137201f, 0.058870665f, 0.055603617f, 0.052335974f, 0.049067651f, 0.045798921f, 0.042529582f, 0.039259788f, 0.035989573f, 0.032719092f, 0.029448142f, 0.026176876f, 0.022905329f, 0.019633657f, 0.016361655f, 0.013089478f, 0.0098171604f, 0.0065449764f, 0.0032724839f, -4.3711390e-08f, };
 #endif
 
 static const CELTMode mode48000_960_120 = {
@@ -114,7 +114,7 @@ static const CELTMode mode48000_960_120 = {
 120,   /* overlap */
 21,    /* nbEBands */
 21,    /* effEBands */
-{0.850005984f, 0.000000000f, 1.000000000f, 1.000000000f, },    /* preemph */
+{0.85000610f, 0.0000000f, 1.0000000f, 1.0000000f, },   /* preemph */
 eband5ms,      /* eBands */
 11,    /* nbAllocVectors */
 band_allocation,       /* allocVectors */