shithub: aacdec

Download patch

ref: 0c44115a21f56a1f26e53de8c41382f4fba51bf0
parent: ed830d652600db23d798c63f4b8d6b658a9084c5
author: menno <menno>
date: Wed Sep 24 07:52:12 EDT 2003

removed DST64 code

--- a/libfaad/sbr_dct.c
+++ b/libfaad/sbr_dct.c
@@ -22,7 +22,7 @@
 ** Commercial non-GPL licensing of this software is possible.
 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
 **
-** $Id: sbr_dct.c,v 1.3 2003/09/09 18:37:32 menno Exp $
+** $Id: sbr_dct.c,v 1.4 2003/09/24 11:52:12 menno Exp $
 **/
 
 #include "common.h"
@@ -2648,1624 +2648,6 @@
     f801 = 1.4141070746927915 * f275;
     y[31] = f799 + f800;
     y[32] = f801 - f800;
-}
-
-void DST4_64(real_t *y, real_t *x)
-{
-    real_t f1;
-    real_t f3;
-    real_t f5;
-    real_t f7;
-    real_t f9;
-    real_t f11;
-    real_t f13;
-    real_t f15;
-    real_t f17;
-    real_t f19;
-    real_t f21;
-    real_t f23;
-    real_t f25;
-    real_t f27;
-    real_t f29;
-    real_t f31;
-    real_t f33;
-    real_t f35;
-    real_t f37;
-    real_t f39;
-    real_t f41;
-    real_t f43;
-    real_t f45;
-    real_t f47;
-    real_t f49;
-    real_t f51;
-    real_t f53;
-    real_t f55;
-    real_t f57;
-    real_t f59;
-    real_t f61;
-    real_t f63;
-    int16_t i0;
-    real_t f66;
-    real_t f67;
-    real_t f68;
-    real_t f69;
-    real_t f70;
-    real_t f71;
-    real_t f72;
-    real_t f73;
-    real_t f74;
-    real_t f75;
-    real_t f76;
-    real_t f77;
-    real_t f78;
-    real_t f79;
-    real_t f80;
-    real_t f81;
-    real_t f82;
-    real_t f83;
-    real_t f84;
-    real_t f85;
-    real_t f86;
-    real_t f87;
-    real_t f88;
-    real_t f89;
-    real_t f90;
-    real_t f91;
-    real_t f92;
-    real_t f93;
-    real_t f94;
-    real_t f95;
-    real_t f96;
-    real_t f97;
-    real_t f98;
-    real_t f99;
-    real_t f100;
-    real_t f101;
-    real_t f102;
-    real_t f103;
-    real_t f104;
-    real_t f105;
-    real_t f106;
-    real_t f107;
-    real_t f108;
-    real_t f109;
-    real_t f110;
-    real_t f111;
-    real_t f112;
-    real_t f113;
-    real_t f114;
-    real_t f115;
-    real_t f116;
-    real_t f117;
-    real_t f118;
-    real_t f119;
-    real_t f120;
-    real_t f121;
-    real_t f122;
-    real_t f123;
-    real_t f124;
-    real_t f125;
-    real_t f126;
-    real_t f127;
-    real_t f128;
-    real_t f129;
-    real_t f130;
-    real_t f131;
-    real_t f132;
-    real_t f133;
-    real_t f134;
-    real_t f135;
-    real_t f136;
-    real_t f137;
-    real_t f138;
-    real_t f139;
-    real_t f140;
-    real_t f141;
-    real_t f142;
-    real_t f143;
-    real_t f144;
-    real_t f145;
-    real_t f146;
-    real_t f147;
-    real_t f148;
-    real_t f149;
-    real_t f150;
-    real_t f151;
-    real_t f152;
-    real_t f153;
-    real_t f154;
-    real_t f155;
-    real_t f156;
-    real_t f157;
-    real_t f158;
-    real_t f159;
-    real_t f160;
-    real_t f161;
-    real_t f162;
-    real_t f163;
-    real_t f164;
-    real_t f165;
-    real_t f166;
-    real_t f167;
-    real_t f168;
-    real_t f169;
-    real_t f170;
-    real_t f171;
-    real_t f172;
-    real_t f173;
-    real_t f174;
-    real_t f175;
-    real_t f176;
-    real_t f177;
-    real_t f178;
-    real_t f179;
-    real_t f180;
-    real_t f181;
-    real_t f182;
-    real_t f183;
-    real_t f184;
-    real_t f185;
-    real_t f186;
-    real_t f187;
-    real_t f188;
-    real_t f189;
-    real_t f190;
-    real_t f191;
-    real_t f192;
-    real_t f193;
-    real_t f194;
-    real_t f195;
-    real_t f196;
-    real_t f197;
-    real_t f198;
-    real_t f199;
-    real_t f200;
-    real_t f201;
-    real_t f202;
-    real_t f203;
-    real_t f204;
-    real_t f205;
-    real_t f206;
-    real_t f207;
-    real_t f208;
-    real_t f209;
-    real_t f210;
-    real_t f211;
-    real_t f212;
-    real_t f213;
-    real_t f214;
-    real_t f215;
-    real_t f216;
-    real_t f217;
-    real_t f218;
-    real_t f219;
-    real_t f220;
-    real_t f221;
-    real_t f222;
-    real_t f223;
-    real_t f224;
-    real_t f225;
-    real_t f226;
-    real_t f227;
-    real_t f228;
-    real_t f229;
-    real_t f230;
-    real_t f231;
-    real_t f232;
-    real_t f233;
-    real_t f234;
-    real_t f235;
-    real_t f236;
-    real_t f237;
-    real_t f238;
-    real_t f239;
-    real_t f240;
-    real_t f241;
-    real_t f242;
-    real_t f243;
-    real_t f244;
-    real_t f245;
-    real_t f246;
-    real_t f247;
-    real_t f248;
-    real_t f249;
-    real_t f250;
-    real_t f251;
-    real_t f252;
-    real_t f253;
-    real_t f254;
-    real_t f255;
-    real_t f256;
-    real_t f257;
-    real_t f258;
-    real_t f259;
-    real_t f260;
-    real_t f261;
-    real_t f262;
-    real_t f263;
-    real_t f264;
-    real_t f265;
-    real_t f266;
-    real_t f267;
-    real_t f268;
-    real_t f269;
-    real_t f270;
-    real_t f271;
-    real_t f272;
-    real_t f273;
-    real_t f274;
-    real_t f275;
-    real_t f276;
-    real_t f277;
-    real_t f278;
-    real_t f279;
-    real_t f280;
-    real_t f281;
-    real_t f282;
-    real_t f283;
-    real_t f284;
-    real_t f285;
-    real_t f286;
-    real_t f287;
-    real_t f288;
-    real_t f289;
-    real_t f290;
-    real_t f291;
-    real_t f292;
-    real_t f293;
-    real_t f294;
-    real_t f295;
-    real_t f296;
-    real_t f297;
-    real_t f298;
-    real_t f299;
-    real_t f300;
-    real_t f301;
-    real_t f302;
-    real_t f303;
-    real_t f304;
-    real_t f305;
-    real_t f306;
-    real_t f307;
-    real_t f308;
-    real_t f309;
-    real_t f310;
-    real_t f311;
-    real_t f312;
-    real_t f313;
-    real_t f314;
-    real_t f315;
-    real_t f316;
-    real_t f317;
-    real_t f318;
-    real_t f319;
-    real_t f320;
-    real_t f321;
-    real_t f322;
-    real_t f323;
-    real_t f324;
-    real_t f325;
-    real_t f326;
-    real_t f327;
-    real_t f328;
-    real_t f329;
-    real_t f330;
-    real_t f331;
-    real_t f332;
-    real_t f333;
-    real_t f334;
-    real_t f335;
-    real_t f336;
-    real_t f337;
-    real_t f338;
-    real_t f339;
-    real_t f340;
-    real_t f341;
-    real_t f342;
-    real_t f343;
-    real_t f344;
-    real_t f345;
-    real_t f346;
-    real_t f347;
-    real_t f348;
-    real_t f349;
-    real_t f350;
-    real_t f351;
-    real_t f352;
-    real_t f353;
-    real_t f354;
-    real_t f355;
-    real_t f356;
-    real_t f357;
-    real_t f358;
-    real_t f359;
-    real_t f360;
-    real_t f361;
-    real_t f362;
-    real_t f363;
-    real_t f364;
-    real_t f365;
-    real_t f366;
-    real_t f367;
-    real_t f368;
-    real_t f369;
-    real_t f370;
-    real_t f371;
-    real_t f372;
-    real_t f373;
-    real_t f374;
-    real_t f375;
-    real_t f376;
-    real_t f377;
-    real_t f378;
-    real_t f379;
-    real_t f380;
-    real_t f381;
-    real_t f382;
-    real_t f383;
-    real_t f384;
-    real_t f385;
-    real_t f386;
-    real_t f387;
-    real_t f388;
-    real_t f389;
-    real_t f390;
-    real_t f391;
-    real_t f392;
-    real_t f393;
-    real_t f394;
-    real_t f395;
-    real_t f396;
-    real_t f397;
-    real_t f398;
-    real_t f399;
-    real_t f400;
-    real_t f401;
-    real_t f402;
-    real_t f403;
-    real_t f404;
-    real_t f405;
-    real_t f406;
-    real_t f407;
-    real_t f408;
-    real_t f409;
-    real_t f410;
-    real_t f411;
-    real_t f412;
-    real_t f413;
-    real_t f414;
-    real_t f415;
-    real_t f416;
-    real_t f417;
-    real_t f418;
-    real_t f419;
-    real_t f420;
-    real_t f421;
-    real_t f422;
-    real_t f423;
-    real_t f424;
-    real_t f425;
-    real_t f426;
-    real_t f427;
-    real_t f428;
-    real_t f429;
-    real_t f430;
-    real_t f431;
-    real_t f432;
-    real_t f433;
-    real_t f434;
-    real_t f435;
-    real_t f436;
-    real_t f437;
-    real_t f438;
-    real_t f439;
-    real_t f440;
-    real_t f441;
-    real_t f442;
-    real_t f443;
-    real_t f444;
-    real_t f445;
-    real_t f446;
-    real_t f447;
-    real_t f448;
-    real_t f449;
-    real_t f450;
-    real_t f451;
-    real_t f452;
-    real_t f453;
-    real_t f454;
-    real_t f455;
-    real_t f456;
-    real_t f457;
-    real_t f458;
-    real_t f459;
-    real_t f460;
-    real_t f461;
-    real_t f462;
-    real_t f463;
-    real_t f464;
-    real_t f465;
-    real_t f466;
-    real_t f467;
-    real_t f468;
-    real_t f469;
-    real_t f470;
-    real_t f471;
-    real_t f472;
-    real_t f473;
-    real_t f474;
-    real_t f475;
-    real_t f476;
-    real_t f477;
-    real_t f478;
-    real_t f479;
-    real_t f480;
-    real_t f481;
-    real_t f482;
-    real_t f483;
-    real_t f484;
-    real_t f485;
-    real_t f486;
-    real_t f487;
-    real_t f488;
-    real_t f489;
-    real_t f490;
-    real_t f491;
-    real_t f492;
-    real_t f493;
-    real_t f494;
-    real_t f495;
-    real_t f496;
-    real_t f497;
-    real_t f498;
-    real_t f499;
-    real_t f500;
-    real_t f501;
-    real_t f502;
-    real_t f503;
-    real_t f504;
-    real_t f505;
-    real_t f506;
-    real_t f507;
-    real_t f508;
-    real_t f509;
-    real_t f510;
-    real_t f511;
-    real_t f512;
-    real_t f513;
-    real_t f514;
-    real_t f515;
-    real_t f516;
-    real_t f517;
-    real_t f518;
-    real_t f519;
-    real_t f520;
-    real_t f521;
-    real_t f522;
-    real_t f523;
-    real_t f524;
-    real_t f525;
-    real_t f526;
-    real_t f527;
-    real_t f528;
-    real_t f529;
-    real_t f530;
-    real_t f531;
-    real_t f532;
-    real_t f533;
-    real_t f534;
-    real_t f535;
-    real_t f536;
-    real_t f537;
-    real_t f538;
-    real_t f539;
-    real_t f540;
-    real_t f541;
-    real_t f542;
-    real_t f543;
-    real_t f544;
-    real_t f545;
-    real_t f546;
-    real_t f547;
-    real_t f548;
-    real_t f549;
-    real_t f550;
-    real_t f551;
-    real_t f552;
-    real_t f553;
-    real_t f554;
-    real_t f555;
-    real_t f556;
-    real_t f557;
-    real_t f558;
-    real_t f559;
-    real_t f560;
-    real_t f561;
-    real_t f562;
-    real_t f563;
-    real_t f564;
-    real_t f565;
-    real_t f566;
-    real_t f567;
-    real_t f568;
-    real_t f569;
-    real_t f570;
-    real_t f571;
-    real_t f572;
-    real_t f573;
-    real_t f574;
-    real_t f575;
-    real_t f576;
-    real_t f577;
-    real_t f578;
-    real_t f579;
-    real_t f580;
-    real_t f581;
-    real_t f582;
-    real_t f583;
-    real_t f584;
-    real_t f585;
-    real_t f586;
-    real_t f587;
-    real_t f588;
-    real_t f589;
-    real_t f590;
-    real_t f591;
-    real_t f592;
-    real_t f593;
-    real_t f594;
-    real_t f595;
-    real_t f596;
-    real_t f597;
-    real_t f598;
-    real_t f599;
-    real_t f600;
-    real_t f601;
-    real_t f602;
-    real_t f603;
-    real_t f604;
-    real_t f605;
-    real_t f606;
-    real_t f607;
-    real_t f608;
-    real_t f609;
-    real_t f610;
-    real_t f611;
-    real_t f612;
-    real_t f613;
-    real_t f614;
-    real_t f615;
-    real_t f616;
-    real_t f617;
-    real_t f618;
-    real_t f619;
-    real_t f620;
-    real_t f621;
-    real_t f622;
-    real_t f623;
-    real_t f624;
-    real_t f625;
-    real_t f626;
-    real_t f627;
-    real_t f628;
-    real_t f629;
-    real_t f630;
-    real_t f631;
-    real_t f632;
-    real_t f633;
-    real_t f634;
-    real_t f635;
-    real_t f636;
-    real_t f637;
-    real_t f638;
-    real_t f639;
-    real_t f640;
-    real_t f641;
-    real_t f642;
-    real_t f643;
-    real_t f644;
-    real_t f645;
-    real_t f646;
-    real_t f647;
-    real_t f648;
-    real_t f649;
-    real_t f650;
-    real_t f651;
-    real_t f652;
-    real_t f653;
-    real_t f654;
-    real_t f655;
-    real_t f656;
-    real_t f657;
-    real_t f658;
-    real_t f659;
-    real_t f660;
-    real_t f661;
-    real_t f662;
-    real_t f663;
-    real_t f664;
-    real_t f665;
-    real_t f666;
-    real_t f667;
-    real_t f668;
-    real_t f669;
-    real_t f670;
-    real_t f671;
-    real_t f672;
-    real_t f673;
-    real_t f674;
-    real_t f675;
-    real_t f676;
-    real_t f677;
-    real_t f678;
-    real_t f679;
-    real_t f681;
-    real_t f682;
-    real_t f683;
-    real_t f684;
-    real_t f685;
-    real_t f686;
-    real_t f687;
-    real_t f688;
-    real_t f689;
-    real_t f690;
-    real_t f691;
-    real_t f692;
-    real_t f693;
-    real_t f694;
-    real_t f695;
-    real_t f696;
-    real_t f697;
-    real_t f698;
-    real_t f699;
-    real_t f700;
-    real_t f701;
-    real_t f702;
-    real_t f703;
-    real_t f704;
-    real_t f705;
-    real_t f706;
-    real_t f707;
-    real_t f708;
-    real_t f709;
-    real_t f710;
-    real_t f711;
-    real_t f712;
-    real_t f713;
-    real_t f714;
-    real_t f715;
-    real_t f716;
-    real_t f717;
-    real_t f718;
-    real_t f719;
-    real_t f720;
-    real_t f721;
-    real_t f722;
-    real_t f723;
-    real_t f724;
-    real_t f725;
-    real_t f726;
-    real_t f727;
-    real_t f728;
-    real_t f729;
-    real_t f730;
-    real_t f731;
-    real_t f732;
-    real_t f733;
-    real_t f734;
-    real_t f735;
-    real_t f736;
-    real_t f737;
-    real_t f738;
-    real_t f739;
-    real_t f740;
-    real_t f741;
-    real_t f742;
-    real_t f743;
-    real_t f744;
-    real_t f745;
-    real_t f746;
-    real_t f747;
-    real_t f748;
-    real_t f749;
-    real_t f750;
-    real_t f751;
-    real_t f752;
-    real_t f753;
-    real_t f754;
-    real_t f755;
-    real_t f756;
-    real_t f757;
-    real_t f758;
-    real_t f759;
-    real_t f760;
-    real_t f761;
-    real_t f762;
-    real_t f763;
-    real_t f764;
-    real_t f765;
-    real_t f766;
-    real_t f767;
-    real_t f768;
-    real_t f769;
-    real_t f770;
-    static real_t t7[64];
-    static real_t t6[64];
-    static real_t t0[64];
-
-    t7[0] = 0.5000376519155477 * x[0];
-    f1 = 0.5003390374428216 * x[1];
-    t7[2] = 0 - f1;
-    t7[4] = 0.5009427176380873 * x[2];
-    f3 = 0.5018505174842379 * x[3];
-    t7[6] = 0 - f3;
-    t7[8] = 0.5030651913013697 * x[4];
-    f5 = 0.5045904432216454 * x[5];
-    t7[10] = 0 - f5;
-    t7[12] = 0.5064309549285542 * x[6];
-    f7 = 0.5085924210498143 * x[7];
-    t7[14] = 0 - f7;
-    t7[16] = 0.5110815927066812 * x[8];
-    f9 = 0.5139063298475396 * x[9];
-    t7[18] = 0 - f9;
-    t7[20] = 0.5170756631334912 * x[10];
-    f11 = 0.5205998663018917 * x[11];
-    t7[22] = 0 - f11;
-    t7[24] = 0.5244905401147240 * x[12];
-    f13 = 0.5287607092074876 * x[13];
-    t7[26] = 0 - f13;
-    t7[28] = 0.5334249333971333 * x[14];
-    f15 = 0.5384994352919840 * x[15];
-    t7[30] = 0 - f15;
-    t7[32] = 0.5440022463817783 * x[16];
-    f17 = 0.5499533741832360 * x[17];
-    t7[34] = 0 - f17;
-    t7[36] = 0.5563749934898856 * x[18];
-    f19 = 0.5632916653417023 * x[19];
-    t7[38] = 0 - f19;
-    t7[40] = 0.5707305880121454 * x[20];
-    f21 = 0.5787218851348208 * x[21];
-    t7[42] = 0 - f21;
-    t7[44] = 0.5872989370937893 * x[22];
-    f23 = 0.5964987630244563 * x[23];
-    t7[46] = 0 - f23;
-    t7[48] = 0.6063624622721460 * x[24];
-    f25 = 0.6169357260050706 * x[25];
-    t7[50] = 0 - f25;
-    t7[52] = 0.6282694319707711 * x[26];
-    f27 = 0.6404203382416639 * x[27];
-    t7[54] = 0 - f27;
-    t7[56] = 0.6534518953751283 * x[28];
-    f29 = 0.6674352009263413 * x[29];
-    t7[58] = 0 - f29;
-    t7[60] = 0.6824501259764195 * x[30];
-    f31 = 0.6985866506472291 * x[31];
-    t7[62] = 0 - f31;
-    t7[63] = 0.7159464549705746 * x[32];
-    f33 = 0.7346448236478627 * x[33];
-    t7[61] = 0 - f33;
-    t7[59] = 0.7548129391165311 * x[34];
-    f35 = 0.7766006582339630 * x[35];
-    t7[57] = 0 - f35;
-    t7[55] = 0.8001798956216941 * x[36];
-    f37 = 0.8257487738627852 * x[37];
-    t7[53] = 0 - f37;
-    t7[51] = 0.8535367510066064 * x[38];
-    f39 = 0.8838110045596234 * x[39];
-    t7[49] = 0 - f39;
-    t7[47] = 0.9168844461846523 * x[40];
-    f41 = 0.9531258743921193 * x[41];
-    t7[45] = 0 - f41;
-    t7[43] = 0.9929729612675466 * x[42];
-    f43 = 1.0369490409103890 * x[43];
-    t7[41] = 0 - f43;
-    t7[39] = 1.0856850642580145 * x[44];
-    f45 = 1.1399486751015042 * x[45];
-    t7[37] = 0 - f45;
-    t7[35] = 1.2006832557294167 * x[46];
-    f47 = 1.2690611716991191 * x[47];
-    t7[33] = 0 - f47;
-    t7[31] = 1.3465576282062861 * x[48];
-    f49 = 1.4350550884414341 * x[49];
-    t7[29] = 0 - f49;
-    t7[27] = 1.5369941008524954 * x[50];
-    f51 = 1.6555965242641195 * x[51];
-    t7[25] = 0 - f51;
-    t7[23] = 1.7952052190778898 * x[52];
-    f53 = 1.9618178485711659 * x[53];
-    t7[21] = 0 - f53;
-    t7[19] = 2.1639578187519790 * x[54];
-    f55 = 2.4141600002500763 * x[55];
-    t7[17] = 0 - f55;
-    t7[15] = 2.7316450287739396 * x[56];
-    f57 = 3.1474621917819090 * x[57];
-    t7[13] = 0 - f57;
-    t7[11] = 3.7152427383269746 * x[58];
-    f59 = 4.5362909369693565 * x[59];
-    t7[9] = 0 - f59;
-    t7[7] = 5.8276883778446544 * x[60];
-    f61 = 8.1538486024668142 * x[61];
-    t7[5] = 0 - f61;
-    t7[3] = 13.5842902572844600 * x[62];
-    f63 = 40.7446881033518340 * x[63];
-    t7[1] = 0 - f63;
-    for (i0=0; i0<32; i0++)
-    {
-        t6[2*i0+1] = t7[2*i0] - t7[2*i0+1];
-        t6[2*i0] = t7[2*i0] + t7[2*i0+1];
-    }
-    f66 = t6[0] - t6[62];
-    f67 = t6[0] + t6[62];
-    f68 = t6[2] - t6[60];
-    f69 = t6[2] + t6[60];
-    f70 = t6[4] - t6[58];
-    f71 = t6[4] + t6[58];
-    f72 = t6[6] - t6[56];
-    f73 = t6[6] + t6[56];
-    f74 = t6[8] - t6[54];
-    f75 = t6[8] + t6[54];
-    f76 = t6[10] - t6[52];
-    f77 = t6[10] + t6[52];
-    f78 = t6[12] - t6[50];
-    f79 = t6[12] + t6[50];
-    f80 = t6[14] - t6[48];
-    f81 = t6[14] + t6[48];
-    f82 = t6[16] - t6[46];
-    f83 = t6[16] + t6[46];
-    f84 = t6[18] - t6[44];
-    f85 = t6[18] + t6[44];
-    f86 = t6[20] - t6[42];
-    f87 = t6[20] + t6[42];
-    f88 = t6[22] - t6[40];
-    f89 = t6[22] + t6[40];
-    f90 = t6[24] - t6[38];
-    f91 = t6[24] + t6[38];
-    f92 = t6[26] - t6[36];
-    f93 = t6[26] + t6[36];
-    f94 = t6[28] - t6[34];
-    f95 = t6[28] + t6[34];
-    f96 = t6[30] - t6[32];
-    f97 = t6[30] + t6[32];
-    f98 = f67 - f97;
-    f99 = f67 + f97;
-    f100 = f69 - f95;
-    f101 = f69 + f95;
-    f102 = f71 - f93;
-    f103 = f71 + f93;
-    f104 = f73 - f91;
-    f105 = f73 + f91;
-    f106 = f75 - f89;
-    f107 = f75 + f89;
-    f108 = f77 - f87;
-    f109 = f77 + f87;
-    f110 = f79 - f85;
-    f111 = f79 + f85;
-    f112 = f81 - f83;
-    f113 = f81 + f83;
-    f114 = f99 - f113;
-    f115 = f99 + f113;
-    f116 = f101 - f111;
-    f117 = f101 + f111;
-    f118 = f103 - f109;
-    f119 = f103 + f109;
-    f120 = f105 - f107;
-    f121 = f105 + f107;
-    f122 = f115 - f121;
-    f123 = f115 + f121;
-    f124 = f117 - f119;
-    f125 = f117 + f119;
-    f126 = f123 - f125;
-    f127 = f123 + f125;
-    f128 = 0.7071067811865476 * f126;
-    f129 = f122 + f124;
-    f130 = 1.3065629648763766 * f122;
-    f131 = (-0.9238795325112866) * f129;
-    f132 = (-0.5411961001461967) * f124;
-    f133 = f130 + f131;
-    f134 = f132 - f131;
-    f135 = f116 - f118;
-    f136 = f116 + f118;
-    f137 = 0.7071067811865476 * f136;
-    f138 = 0.7071067811865476 * f135;
-    f139 = f114 - f137;
-    f140 = f114 + f137;
-    f141 = f120 - f138;
-    f142 = f120 + f138;
-    f143 = f142 + f140;
-    f144 = (-0.7856949583871021) * f142;
-    f145 = 0.9807852804032304 * f143;
-    f146 = 1.1758756024193588 * f140;
-    f147 = f144 + f145;
-    f148 = f146 - f145;
-    f149 = f141 + f139;
-    f150 = 0.2758993792829431 * f141;
-    f151 = 0.5555702330196022 * f149;
-    f152 = 1.3870398453221475 * f139;
-    f153 = f150 + f151;
-    f154 = f152 - f151;
-    f155 = f100 - f102;
-    f156 = f100 + f102;
-    f157 = f104 - f106;
-    f158 = f104 + f106;
-    f159 = f108 - f110;
-    f160 = f108 + f110;
-    f161 = 0.7071067811865476 * f158;
-    f162 = f98 - f161;
-    f163 = f98 + f161;
-    f164 = f156 + f160;
-    f165 = 1.3065629648763766 * f156;
-    f166 = (-0.9238795325112866) * f164;
-    f167 = (-0.5411961001461967) * f160;
-    f168 = f165 + f166;
-    f169 = f167 - f166;
-    f170 = f163 - f169;
-    f171 = f163 + f169;
-    f172 = f162 - f168;
-    f173 = f162 + f168;
-    f174 = f155 + f159;
-    f175 = 1.3065629648763770 * f155;
-    f176 = (-0.3826834323650904) * f174;
-    f177 = 0.5411961001461961 * f159;
-    f178 = f175 + f176;
-    f179 = f177 - f176;
-    f180 = 0.7071067811865476 * f157;
-    f181 = f180 - f112;
-    f182 = f180 + f112;
-    f183 = f179 - f182;
-    f184 = f179 + f182;
-    f185 = f178 - f181;
-    f186 = f178 + f181;
-    f187 = f184 + f171;
-    f188 = (-0.8971675863426361) * f184;
-    f189 = 0.9951847266721968 * f187;
-    f190 = 1.0932018670017576 * f171;
-    f191 = f188 + f189;
-    f192 = f190 - f189;
-    f193 = f186 + f173;
-    f194 = (-0.6666556584777466) * f186;
-    f195 = 0.9569403357322089 * f193;
-    f196 = 1.2472250129866713 * f173;
-    f197 = f194 + f195;
-    f198 = f196 - f195;
-    f199 = f185 + f172;
-    f200 = (-0.4105245275223571) * f185;
-    f201 = 0.8819212643483549 * f199;
-    f202 = 1.3533180011743529 * f172;
-    f203 = f200 + f201;
-    f204 = f202 - f201;
-    f205 = f183 + f170;
-    f206 = (-0.1386171691990915) * f183;
-    f207 = 0.7730104533627370 * f205;
-    f208 = 1.4074037375263826 * f170;
-    f209 = f206 + f207;
-    f210 = f208 - f207;
-    f211 = f66 + f96;
-    f212 = 1.0478631305325901 * f66;
-    f213 = (-0.9987954562051724) * f211;
-    f214 = (-0.9497277818777548) * f96;
-    f215 = f212 + f213;
-    f216 = f214 - f213;
-    f217 = f70 + f92;
-    f218 = 1.2130114330978077 * f70;
-    f219 = (-0.9700312531945440) * f217;
-    f220 = (-0.7270510732912803) * f92;
-    f221 = f218 + f219;
-    f222 = f220 - f219;
-    f223 = f74 + f88;
-    f224 = 1.3315443865537255 * f74;
-    f225 = (-0.9039892931234433) * f223;
-    f226 = (-0.4764341996931612) * f88;
-    f227 = f224 + f225;
-    f228 = f226 - f225;
-    f229 = f78 + f84;
-    f230 = 1.3989068359730781 * f78;
-    f231 = (-0.8032075314806453) * f229;
-    f232 = (-0.2075082269882124) * f84;
-    f233 = f230 + f231;
-    f234 = f232 - f231;
-    f235 = f82 + f80;
-    f236 = 1.4125100802019777 * f82;
-    f237 = (-0.6715589548470187) * f235;
-    f238 = 0.0693921705079402 * f80;
-    f239 = f236 + f237;
-    f240 = f238 - f237;
-    f241 = f86 + f76;
-    f242 = 1.3718313541934939 * f86;
-    f243 = (-0.5141027441932219) * f241;
-    f244 = 0.3436258658070501 * f76;
-    f245 = f242 + f243;
-    f246 = f244 - f243;
-    f247 = f90 + f72;
-    f248 = 1.2784339185752409 * f90;
-    f249 = (-0.3368898533922200) * f247;
-    f250 = 0.6046542117908008 * f72;
-    f251 = f248 + f249;
-    f252 = f250 - f249;
-    f253 = f94 + f68;
-    f254 = 1.1359069844201433 * f94;
-    f255 = (-0.1467304744553624) * f253;
-    f256 = 0.8424460355094185 * f68;
-    f257 = f254 + f255;
-    f258 = f256 - f255;
-    f259 = f216 - f240;
-    f260 = f216 + f240;
-    f261 = f215 - f239;
-    f262 = f215 + f239;
-    f263 = f222 - f246;
-    f264 = f222 + f246;
-    f265 = f221 - f245;
-    f266 = f221 + f245;
-    f267 = f228 - f252;
-    f268 = f228 + f252;
-    f269 = f227 - f251;
-    f270 = f227 + f251;
-    f271 = f234 - f258;
-    f272 = f234 + f258;
-    f273 = f233 - f257;
-    f274 = f233 + f257;
-    f275 = f259 + f261;
-    f276 = 1.1758756024193588 * f259;
-    f277 = (-0.9807852804032304) * f275;
-    f278 = (-0.7856949583871021) * f261;
-    f279 = f276 + f277;
-    f280 = f278 - f277;
-    f281 = f263 + f265;
-    f282 = 1.3870398453221475 * f263;
-    f283 = (-0.5555702330196022) * f281;
-    f284 = 0.2758993792829431 * f265;
-    f285 = f282 + f283;
-    f286 = f284 - f283;
-    f287 = f267 + f269;
-    f288 = 0.7856949583871022 * f267;
-    f289 = 0.1950903220161283 * f287;
-    f290 = 1.1758756024193586 * f269;
-    f291 = f288 + f289;
-    f292 = f290 - f289;
-    f293 = f271 + f273;
-    f294 = (-0.2758993792829430) * f271;
-    f295 = 0.8314696123025452 * f293;
-    f296 = 1.3870398453221475 * f273;
-    f297 = f294 + f295;
-    f298 = f296 - f295;
-    f299 = f260 - f268;
-    f300 = f260 + f268;
-    f301 = f262 - f270;
-    f302 = f262 + f270;
-    f303 = f264 - f272;
-    f304 = f264 + f272;
-    f305 = f266 - f274;
-    f306 = f266 + f274;
-    f307 = f280 - f292;
-    f308 = f280 + f292;
-    f309 = f279 - f291;
-    f310 = f279 + f291;
-    f311 = f286 - f298;
-    f312 = f286 + f298;
-    f313 = f285 - f297;
-    f314 = f285 + f297;
-    f315 = f299 + f301;
-    f316 = 1.3065629648763766 * f299;
-    f317 = (-0.9238795325112866) * f315;
-    f318 = (-0.5411961001461967) * f301;
-    f319 = f316 + f317;
-    f320 = f318 - f317;
-    f321 = f303 + f305;
-    f322 = 0.5411961001461969 * f303;
-    f323 = 0.3826834323650898 * f321;
-    f324 = 1.3065629648763766 * f305;
-    f325 = f322 + f323;
-    f326 = f324 - f323;
-    f327 = f307 + f309;
-    f328 = 1.3065629648763766 * f307;
-    f329 = (-0.9238795325112866) * f327;
-    f330 = (-0.5411961001461967) * f309;
-    f331 = f328 + f329;
-    f332 = f330 - f329;
-    f333 = f311 + f313;
-    f334 = 0.5411961001461969 * f311;
-    f335 = 0.3826834323650898 * f333;
-    f336 = 1.3065629648763766 * f313;
-    f337 = f334 + f335;
-    f338 = f336 - f335;
-    f339 = f300 - f304;
-    f340 = f300 + f304;
-    f341 = f302 - f306;
-    f342 = f302 + f306;
-    f343 = f320 - f326;
-    f344 = f320 + f326;
-    f345 = f319 - f325;
-    f346 = f319 + f325;
-    f347 = f308 - f312;
-    f348 = f308 + f312;
-    f349 = f310 - f314;
-    f350 = f310 + f314;
-    f351 = f332 - f338;
-    f352 = f332 + f338;
-    f353 = f331 - f337;
-    f354 = f331 + f337;
-    f355 = f339 - f341;
-    f356 = f339 + f341;
-    f357 = 0.7071067811865474 * f355;
-    f358 = 0.7071067811865474 * f356;
-    f359 = f343 - f345;
-    f360 = f343 + f345;
-    f361 = 0.7071067811865474 * f359;
-    f362 = 0.7071067811865474 * f360;
-    f363 = f347 - f349;
-    f364 = f347 + f349;
-    f365 = 0.7071067811865474 * f363;
-    f366 = 0.7071067811865474 * f364;
-    f367 = f351 - f353;
-    f368 = f351 + f353;
-    f369 = 0.7071067811865474 * f367;
-    f370 = 0.7071067811865474 * f368;
-    f371 = t6[31] - t6[33];
-    f372 = t6[31] + t6[33];
-    f373 = 0.7071067811865476 * f372;
-    f374 = 0.7071067811865476 * f371;
-    f375 = t6[17] - t6[47];
-    f376 = t6[17] + t6[47];
-    f377 = 0.7071067811865476 * f376;
-    f378 = 0.7071067811865476 * f375;
-    f379 = t6[25] - t6[39];
-    f380 = t6[25] + t6[39];
-    f381 = 0.7071067811865476 * f380;
-    f382 = 0.7071067811865476 * f379;
-    f383 = t6[23] - t6[41];
-    f384 = t6[23] + t6[41];
-    f385 = 0.7071067811865476 * f384;
-    f386 = 0.7071067811865476 * f383;
-    f387 = t6[29] - t6[35];
-    f388 = t6[29] + t6[35];
-    f389 = 0.7071067811865476 * f388;
-    f390 = 0.7071067811865476 * f387;
-    f391 = t6[19] - t6[45];
-    f392 = t6[19] + t6[45];
-    f393 = 0.7071067811865476 * f392;
-    f394 = 0.7071067811865476 * f391;
-    f395 = t6[27] - t6[37];
-    f396 = t6[27] + t6[37];
-    f397 = 0.7071067811865476 * f396;
-    f398 = 0.7071067811865476 * f395;
-    f399 = t6[21] - t6[43];
-    f400 = t6[21] + t6[43];
-    f401 = 0.7071067811865476 * f400;
-    f402 = 0.7071067811865476 * f399;
-    f403 = t6[1] - f373;
-    f404 = t6[1] + f373;
-    f405 = t6[63] - f374;
-    f406 = t6[63] + f374;
-    f407 = t6[15] - f377;
-    f408 = t6[15] + f377;
-    f409 = t6[49] - f378;
-    f410 = t6[49] + f378;
-    f411 = t6[7] - f381;
-    f412 = t6[7] + f381;
-    f413 = t6[57] - f382;
-    f414 = t6[57] + f382;
-    f415 = t6[9] - f385;
-    f416 = t6[9] + f385;
-    f417 = t6[55] - f386;
-    f418 = t6[55] + f386;
-    f419 = t6[3] - f389;
-    f420 = t6[3] + f389;
-    f421 = t6[61] - f390;
-    f422 = t6[61] + f390;
-    f423 = t6[13] - f393;
-    f424 = t6[13] + f393;
-    f425 = t6[51] - f394;
-    f426 = t6[51] + f394;
-    f427 = t6[5] - f397;
-    f428 = t6[5] + f397;
-    f429 = t6[59] - f398;
-    f430 = t6[59] + f398;
-    f431 = t6[11] - f401;
-    f432 = t6[11] + f401;
-    f433 = t6[53] - f402;
-    f434 = t6[53] + f402;
-    f435 = f410 + f408;
-    f436 = (-0.5411961001461969) * f410;
-    f437 = 0.9238795325112867 * f435;
-    f438 = 1.3065629648763766 * f408;
-    f439 = f436 + f437;
-    f440 = f438 - f437;
-    f441 = f409 + f407;
-    f442 = 1.3065629648763770 * f409;
-    f443 = (-0.3826834323650904) * f441;
-    f444 = 0.5411961001461961 * f407;
-    f445 = f442 + f443;
-    f446 = f444 - f443;
-    f447 = f418 + f416;
-    f448 = (-0.5411961001461969) * f418;
-    f449 = 0.9238795325112867 * f447;
-    f450 = 1.3065629648763766 * f416;
-    f451 = f448 + f449;
-    f452 = f450 - f449;
-    f453 = f417 + f415;
-    f454 = 1.3065629648763770 * f417;
-    f455 = (-0.3826834323650904) * f453;
-    f456 = 0.5411961001461961 * f415;
-    f457 = f454 + f455;
-    f458 = f456 - f455;
-    f459 = f426 + f424;
-    f460 = (-0.5411961001461969) * f426;
-    f461 = 0.9238795325112867 * f459;
-    f462 = 1.3065629648763766 * f424;
-    f463 = f460 + f461;
-    f464 = f462 - f461;
-    f465 = f425 + f423;
-    f466 = 1.3065629648763770 * f425;
-    f467 = (-0.3826834323650904) * f465;
-    f468 = 0.5411961001461961 * f423;
-    f469 = f466 + f467;
-    f470 = f468 - f467;
-    f471 = f434 + f432;
-    f472 = (-0.5411961001461969) * f434;
-    f473 = 0.9238795325112867 * f471;
-    f474 = 1.3065629648763766 * f432;
-    f475 = f472 + f473;
-    f476 = f474 - f473;
-    f477 = f433 + f431;
-    f478 = 1.3065629648763770 * f433;
-    f479 = (-0.3826834323650904) * f477;
-    f480 = 0.5411961001461961 * f431;
-    f481 = f478 + f479;
-    f482 = f480 - f479;
-    f483 = f404 - f439;
-    f484 = f404 + f439;
-    f485 = f406 - f440;
-    f486 = f406 + f440;
-    f487 = f403 - f445;
-    f488 = f403 + f445;
-    f489 = f405 - f446;
-    f490 = f405 + f446;
-    f491 = f412 - f451;
-    f492 = f412 + f451;
-    f493 = f414 - f452;
-    f494 = f414 + f452;
-    f495 = f411 - f457;
-    f496 = f411 + f457;
-    f497 = f413 - f458;
-    f498 = f413 + f458;
-    f499 = f420 - f463;
-    f500 = f420 + f463;
-    f501 = f422 - f464;
-    f502 = f422 + f464;
-    f503 = f419 - f469;
-    f504 = f419 + f469;
-    f505 = f421 - f470;
-    f506 = f421 + f470;
-    f507 = f428 - f475;
-    f508 = f428 + f475;
-    f509 = f430 - f476;
-    f510 = f430 + f476;
-    f511 = f427 - f481;
-    f512 = f427 + f481;
-    f513 = f429 - f482;
-    f514 = f429 + f482;
-    f515 = f494 + f492;
-    f516 = (-0.7856949583871021) * f494;
-    f517 = 0.9807852804032304 * f515;
-    f518 = 1.1758756024193588 * f492;
-    f519 = f516 + f517;
-    f520 = f518 - f517;
-    f521 = f498 + f496;
-    f522 = 0.2758993792829431 * f498;
-    f523 = 0.5555702330196022 * f521;
-    f524 = 1.3870398453221475 * f496;
-    f525 = f522 + f523;
-    f526 = f524 - f523;
-    f527 = f493 + f491;
-    f528 = 1.1758756024193591 * f493;
-    f529 = (-0.1950903220161287) * f527;
-    f530 = 0.7856949583871016 * f491;
-    f531 = f528 + f529;
-    f532 = f530 - f529;
-    f533 = f497 + f495;
-    f534 = 1.3870398453221473 * f497;
-    f535 = (-0.8314696123025455) * f533;
-    f536 = (-0.2758993792829436) * f495;
-    f537 = f534 + f535;
-    f538 = f536 - f535;
-    f539 = f510 + f508;
-    f540 = (-0.7856949583871021) * f510;
-    f541 = 0.9807852804032304 * f539;
-    f542 = 1.1758756024193588 * f508;
-    f543 = f540 + f541;
-    f544 = f542 - f541;
-    f545 = f514 + f512;
-    f546 = 0.2758993792829431 * f514;
-    f547 = 0.5555702330196022 * f545;
-    f548 = 1.3870398453221475 * f512;
-    f549 = f546 + f547;
-    f550 = f548 - f547;
-    f551 = f509 + f507;
-    f552 = 1.1758756024193591 * f509;
-    f553 = (-0.1950903220161287) * f551;
-    f554 = 0.7856949583871016 * f507;
-    f555 = f552 + f553;
-    f556 = f554 - f553;
-    f557 = f513 + f511;
-    f558 = 1.3870398453221473 * f513;
-    f559 = (-0.8314696123025455) * f557;
-    f560 = (-0.2758993792829436) * f511;
-    f561 = f558 + f559;
-    f562 = f560 - f559;
-    f563 = f484 - f519;
-    f564 = f484 + f519;
-    f565 = f486 - f520;
-    f566 = f486 + f520;
-    f567 = f488 - f525;
-    f568 = f488 + f525;
-    f569 = f490 - f526;
-    f570 = f490 + f526;
-    f571 = f483 - f531;
-    f572 = f483 + f531;
-    f573 = f485 - f532;
-    f574 = f485 + f532;
-    f575 = f487 - f537;
-    f576 = f487 + f537;
-    f577 = f489 - f538;
-    f578 = f489 + f538;
-    f579 = f500 - f543;
-    f580 = f500 + f543;
-    f581 = f502 - f544;
-    f582 = f502 + f544;
-    f583 = f504 - f549;
-    f584 = f504 + f549;
-    f585 = f506 - f550;
-    f586 = f506 + f550;
-    f587 = f499 - f555;
-    f588 = f499 + f555;
-    f589 = f501 - f556;
-    f590 = f501 + f556;
-    f591 = f503 - f561;
-    f592 = f503 + f561;
-    f593 = f505 - f562;
-    f594 = f505 + f562;
-    f595 = f582 + f580;
-    f596 = (-0.8971675863426361) * f582;
-    f597 = 0.9951847266721968 * f595;
-    f598 = 1.0932018670017576 * f580;
-    f599 = f596 + f597;
-    f600 = f598 - f597;
-    f601 = f586 + f584;
-    f602 = (-0.4105245275223571) * f586;
-    f603 = 0.8819212643483549 * f601;
-    f604 = 1.3533180011743529 * f584;
-    f605 = f602 + f603;
-    f606 = f604 - f603;
-    f607 = f590 + f588;
-    f608 = 0.1386171691990915 * f590;
-    f609 = 0.6343932841636455 * f607;
-    f610 = 1.4074037375263826 * f588;
-    f611 = f608 + f609;
-    f612 = f610 - f609;
-    f613 = f594 + f592;
-    f614 = 0.6666556584777466 * f594;
-    f615 = 0.2902846772544623 * f613;
-    f616 = 1.2472250129866711 * f592;
-    f617 = f614 + f615;
-    f618 = f616 - f615;
-    f619 = f581 + f579;
-    f620 = 1.0932018670017574 * f581;
-    f621 = (-0.0980171403295605) * f619;
-    f622 = 0.8971675863426364 * f579;
-    f623 = f620 + f621;
-    f624 = f622 - f621;
-    f625 = f585 + f583;
-    f626 = 1.3533180011743529 * f585;
-    f627 = (-0.4713967368259979) * f625;
-    f628 = 0.4105245275223569 * f583;
-    f629 = f626 + f627;
-    f630 = f628 - f627;
-    f631 = f589 + f587;
-    f632 = 1.4074037375263826 * f589;
-    f633 = (-0.7730104533627369) * f631;
-    f634 = (-0.1386171691990913) * f587;
-    f635 = f632 + f633;
-    f636 = f634 - f633;
-    f637 = f593 + f591;
-    f638 = 1.2472250129866711 * f593;
-    f639 = (-0.9569403357322089) * f637;
-    f640 = (-0.6666556584777469) * f591;
-    f641 = f638 + f639;
-    f642 = f640 - f639;
-    f643 = f564 - f599;
-    f644 = f564 + f599;
-    f645 = f566 - f600;
-    f646 = f566 + f600;
-    f647 = f568 - f605;
-    f648 = f568 + f605;
-    f649 = f570 - f606;
-    f650 = f570 + f606;
-    f651 = f572 - f611;
-    f652 = f572 + f611;
-    f653 = f574 - f612;
-    f654 = f574 + f612;
-    f655 = f576 - f617;
-    f656 = f576 + f617;
-    f657 = f578 - f618;
-    f658 = f578 + f618;
-    f659 = f563 - f623;
-    f660 = f563 + f623;
-    f661 = f565 - f624;
-    f662 = f565 + f624;
-    f663 = f567 - f629;
-    f664 = f567 + f629;
-    f665 = f569 - f630;
-    f666 = f569 + f630;
-    f667 = f571 - f635;
-    f668 = f571 + f635;
-    f669 = f573 - f636;
-    f670 = f573 + f636;
-    f671 = f575 - f641;
-    f672 = f575 + f641;
-    f673 = f577 - f642;
-    f674 = f577 + f642;
-    f675 = f646 + f644;
-    f676 = (-0.9751575901732920) * f646;
-    f677 = 0.9996988186962043 * f675;
-    f678 = 1.0242400472191164 * f644;
-    f679 = f676 + f677;
-    t0[63] = f678 - f677;
-    f681 = f650 + f648;
-    f682 = (-0.8700688593994936) * f650;
-    f683 = 0.9924795345987100 * f681;
-    f684 = 1.1148902097979263 * f648;
-    f685 = f682 + f683;
-    f686 = f684 - f683;
-    f687 = f654 + f652;
-    f688 = (-0.7566008898816587) * f654;
-    f689 = 0.9757021300385286 * f687;
-    f690 = 1.1948033701953984 * f652;
-    f691 = f688 + f689;
-    f692 = f690 - f689;
-    f693 = f658 + f656;
-    f694 = (-0.6358464401941451) * f658;
-    f695 = 0.9495281805930367 * f693;
-    f696 = 1.2632099209919283 * f656;
-    f697 = f694 + f695;
-    f698 = f696 - f695;
-    f699 = f662 + f660;
-    f700 = (-0.5089684416985408) * f662;
-    f701 = 0.9142097557035307 * f699;
-    f702 = 1.3194510697085207 * f660;
-    f703 = f700 + f701;
-    f704 = f702 - f701;
-    f705 = f666 + f664;
-    f706 = (-0.3771887988789273) * f666;
-    f707 = 0.8700869911087114 * f705;
-    f708 = 1.3629851833384954 * f664;
-    f709 = f706 + f707;
-    f710 = f708 - f707;
-    f711 = f670 + f668;
-    f712 = (-0.2417766217337384) * f670;
-    f713 = 0.8175848131515837 * f711;
-    f714 = 1.3933930045694289 * f668;
-    f715 = f712 + f713;
-    f716 = f714 - f713;
-    f717 = f674 + f672;
-    f718 = (-0.1040360035527077) * f674;
-    f719 = 0.7572088465064845 * f717;
-    f720 = 1.4103816894602612 * f672;
-    f721 = f718 + f719;
-    f722 = f720 - f719;
-    f723 = f645 + f643;
-    f724 = 0.0347065382144002 * f645;
-    f725 = 0.6895405447370668 * f723;
-    f726 = 1.4137876276885337 * f643;
-    f727 = f724 + f725;
-    f728 = f726 - f725;
-    f729 = f649 + f647;
-    f730 = 0.1731148370459795 * f649;
-    f731 = 0.6152315905806268 * f729;
-    f732 = 1.4035780182072330 * f647;
-    f733 = f730 + f731;
-    f734 = f732 - f731;
-    f735 = f653 + f651;
-    f736 = 0.3098559453626100 * f653;
-    f737 = 0.5349976198870972 * f735;
-    f738 = 1.3798511851368043 * f651;
-    f739 = f736 + f737;
-    f740 = f738 - f737;
-    f741 = f657 + f655;
-    f742 = 0.4436129715409088 * f657;
-    f743 = 0.4496113296546065 * f741;
-    f744 = 1.3428356308501219 * f655;
-    f745 = f742 + f743;
-    f746 = f744 - f743;
-    f747 = f661 + f659;
-    f748 = 0.5730977622997509 * f661;
-    f749 = 0.3598950365349881 * f747;
-    f750 = 1.2928878353697271 * f659;
-    f751 = f748 + f749;
-    f752 = f750 - f749;
-    f753 = f665 + f663;
-    f754 = 0.6970633083205415 * f665;
-    f755 = 0.2667127574748984 * f753;
-    f756 = 1.2304888232703382 * f663;
-    f757 = f754 + f755;
-    f758 = f756 - f755;
-    f759 = f669 + f667;
-    f760 = 0.8143157536286401 * f669;
-    f761 = 0.1709618887603012 * f759;
-    f762 = 1.1562395311492424 * f667;
-    f763 = f760 + f761;
-    f764 = f762 - f761;
-    f765 = f673 + f671;
-    f766 = 0.9237258930790228 * f673;
-    f767 = 0.0735645635996674 * f765;
-    f768 = 1.0708550202783576 * f671;
-    f769 = f766 + f767;
-    f770 = f768 - f767;
-    t0[0] = f127 + f679;
-    t0[1] = f679 + f340;
-    t0[2] = f340 + f770;
-    t0[3] = f770 + f191;
-    t0[4] = f191 + f685;
-    t0[5] = f685 + f348;
-    t0[6] = f348 + f764;
-    t0[7] = f764 + f147;
-    t0[8] = f147 + f691;
-    t0[9] = f691 + f352;
-    t0[10] = f352 + f758;
-    t0[11] = f758 + f197;
-    t0[12] = f197 + f697;
-    t0[13] = f697 + f344;
-    t0[14] = f344 + f752;
-    t0[15] = f752 + f134;
-    t0[16] = f134 + f703;
-    t0[17] = f703 + f362;
-    t0[18] = f362 + f746;
-    t0[19] = f746 + f203;
-    t0[20] = f203 + f709;
-    t0[21] = f709 + f370;
-    t0[22] = f370 + f740;
-    t0[23] = f740 + f154;
-    t0[24] = f154 + f715;
-    t0[25] = f715 + f366;
-    t0[26] = f366 + f734;
-    t0[27] = f734 + f209;
-    t0[28] = f209 + f721;
-    t0[29] = f721 + f358;
-    t0[30] = f358 + f728;
-    t0[31] = f728 + f128;
-    t0[32] = f128 + f727;
-    t0[33] = f727 + f357;
-    t0[34] = f357 + f722;
-    t0[35] = f722 + f210;
-    t0[36] = f210 + f733;
-    t0[37] = f733 + f365;
-    t0[38] = f365 + f716;
-    t0[39] = f716 + f153;
-    t0[40] = f153 + f739;
-    t0[41] = f739 + f369;
-    t0[42] = f369 + f710;
-    t0[43] = f710 + f204;
-    t0[44] = f204 + f745;
-    t0[45] = f745 + f361;
-    t0[46] = f361 + f704;
-    t0[47] = f704 + f133;
-    t0[48] = f133 + f751;
-    t0[49] = f751 + f346;
-    t0[50] = f346 + f698;
-    t0[51] = f698 + f198;
-    t0[52] = f198 + f757;
-    t0[53] = f757 + f354;
-    t0[54] = f354 + f692;
-    t0[55] = f692 + f148;
-    t0[56] = f148 + f763;
-    t0[57] = f763 + f350;
-    t0[58] = f350 + f686;
-    t0[59] = f686 + f192;
-    t0[60] = f192 + f769;
-    t0[61] = f769 + f342;
-    t0[62] = f342 + t0[63];
-    for (i0=0; i0<64; i0++)
-    {
-        y[i0] = t0[-i0+63];
-    }
 }
 
 #endif
--- a/libfaad/sbr_dct.h
+++ b/libfaad/sbr_dct.h
@@ -22,7 +22,7 @@
 ** Commercial non-GPL licensing of this software is possible.
 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
 **
-** $Id: sbr_dct.h,v 1.2 2003/09/09 18:09:52 menno Exp $
+** $Id: sbr_dct.h,v 1.3 2003/09/24 11:52:12 menno Exp $
 **/
 
 #ifndef __SBR_DCT_H__
@@ -35,7 +35,6 @@
 void DCT3_32_unscaled(real_t *y, real_t *x);
 void DCT2_64_unscaled(real_t *y, real_t *x);
 void DCT4_64(real_t *y, real_t *x);
-void DST4_64(real_t *y, real_t *x);
 
 
 #ifdef __cplusplus
--- a/libfaad/sbr_qmf.c
+++ b/libfaad/sbr_qmf.c
@@ -22,7 +22,7 @@
 ** Commercial non-GPL licensing of this software is possible.
 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
 **
-** $Id: sbr_qmf.c,v 1.9 2003/09/22 13:15:38 menno Exp $
+** $Id: sbr_qmf.c,v 1.10 2003/09/24 11:52:12 menno Exp $
 **/
 
 #include "common.h"
@@ -215,16 +215,18 @@
         for (k = 0; k < 64; k++)
         {
             x1[k] = QMF_RE(X[(l<<6) + k])/64.;
-            x2[k] = QMF_IM(X[(l<<6) + k])/64.;
+            x2[63 - k] = QMF_IM(X[(l<<6) + k])/64.;
         }
 
         DCT4_64(x1, x1);
-        DST4_64(x2, x2);
+        DCT4_64(x2, x2);
 
-        for (n = 0; n < 64; n++)
+        for (n = 0; n < 64; n+=2)
         {
             qmfs->v[n] = x2[n] - x1[n];
+            qmfs->v[n+1] = -x2[n+1] - x1[n+1];
             qmfs->v[127-n] = x2[n] + x1[n];
+            qmfs->v[127-n-1] = -x2[n+1] + x1[n+1];
         }
 #endif