require('./typed-array.js');
require('../../mad.js');
require('../../layer3.js');

var xr = [
        -0.00049903,0.00151888,-0.00044203,-0.00307714,0.00167362,0.00613469,-0.00406994,-0.01457764,
    0.01214388,0.06229898,-0.14182327,0.92929485,0.13768128,0.06171946,-0.01344565,-0.01477975,
    0.00646184,0.00701636,0.00416800,0.00344713,-0.00471758,-0.00237028,0.00517955,0.00416800,
    0.00312281,0.00100904,-0.00067976,-0.00012207,0.00016437,0.00004844,-0.00006523,-0.00001923,
    0.00003301,0.00001923,-0.00001923,-0.00001923,-0.00001211,-0.00001211,0.00000481,0.00000825,
        -0.00000191,-0.00000191,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000539,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000381,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000191,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000381,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000270,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,-0.00000763,0.00000000,
    0.00000000,0.00000763,-0.00000763,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000763,0.00000763,0.00000000,
    0.00000000,-0.00000763,0.00000000,0.00000000,0.00000000,0.00000000,0.00000763,0.00000000,
        -0.00000763,0.00000000,0.00000000,0.00000000,0.00000000,-0.00000763,0.00000000,0.00000763,
        -0.00000763,-0.00000763,0.00000000,-0.00000763,-0.00000763,0.00000000,0.00000763,0.00000763,
    0.00000000,-0.00000763,-0.00000763,-0.00000763,0.00000000,0.00000000,0.00000000,-0.00000763,
        -0.00000763,0.00000000,-0.00000763,0.00000000,-0.00000763,0.00000000,0.00000000,0.00000000,
    0.00001923,0.00000763,0.00000000,0.00000763,0.00000000,0.00000763,0.00000000,0.00000000,
        -0.00000763,-0.00000763,0.00000000,0.00000763,0.00000763,-0.00000763,0.00000000,0.00000000,
        -0.00000763,0.00000763,0.00000763,0.00000000,-0.00000763,0.00000000,0.00001923,-0.00000763,
    0.00000000,0.00000763,0.00000000,0.00000763,0.00000000,-0.00001923,-0.00000763,0.00000763,
    0.00000763,-0.00000763,-0.00000763,-0.00000763,0.00000763,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000
];
var xr2 = [
        -0.00049903,0.00151888,-0.00044203,-0.00307714,0.00167362,0.00613469,-0.00406994,-0.01457764,
    0.01214388,0.06229898,-0.14181857,0.92924551,0.13773644,0.06193267,-0.01365250,-0.01551367,
    0.00732380,0.00816090,-0.00003586,-0.00000878,0.00015169,0.00011521,-0.00068073,-0.00147570,
        -0.01007217,0.00153378,-0.00067976,-0.00012207,0.00016437,0.00004844,-0.00006526,-0.00001932,
    0.00003396,0.00001976,-0.00002267,-0.00002272,-0.00000050,-0.00000161,-0.00000146,0.00000211,
        -0.00000008,0.00000076,-0.00000069,-0.00000061,0.00000000,0.00000000,0.00000000,0.00000544,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000373,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000190,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
        -0.00000003,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000381,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,-0.00000006,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000269,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,-0.00000001,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,-0.00000763,0.00000000,
    0.00000000,0.00000724,-0.00000673,0.00000000,0.00000000,0.00000360,-0.00000239,0.00000000,
    0.00000000,0.00000031,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,-0.00000139,0.00000000,0.00000000,0.00001046,0.00000262,0.00000000,
    0.00000000,-0.00000750,0.00000000,0.00000000,0.00000000,0.00000000,0.00000763,0.00000000,
        -0.00000760,0.00000011,0.00000000,-0.00000072,-0.00000139,-0.00000725,-0.00000360,0.00000262,
        -0.00001047,-0.00000673,0.00000239,-0.00000750,-0.00000760,0.00000000,0.00000763,0.00000765,
    0.00000000,-0.00000763,-0.00000760,-0.00000736,0.00000000,0.00000000,0.00000000,-0.00000964,
        -0.00000673,-0.00000393,-0.00000655,0.00000360,-0.00000486,0.00000000,0.00000000,0.00000000,
    0.00001933,0.00000765,0.00000000,0.00000763,0.00000000,0.00000773,0.00000031,-0.00000072,
        -0.00000750,-0.00000725,-0.00000360,0.00001046,0.00000262,-0.00000673,0.00000239,0.00000139,
        -0.00000760,0.00000762,0.00000751,0.00000000,-0.00000763,0.00000000,0.00001922,-0.00000752,
        -0.00000031,0.00000687,-0.00000139,0.00000963,0.00000360,-0.00002041,0.00000335,0.00000672,
    0.00000485,-0.00000750,-0.00000832,-0.00000763,0.00000773,-0.00000007,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,
    0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000,0.00000000
];

Mad.III_aliasreduce(xr, 576);

for (var i = 0; i < 576; i++) {
    console.log(Math.abs(xr[i] - xr2[i]));
}