static void hybrid_synthesis(float out[2][38][64], float in[91][32][2], int is34, int len)

{

    int i, n;

    if (is34) {

        for (n = 0; n < len; n++) {

            memset(out[0][n], 0, 5*sizeof(out[0][n][0]));

            memset(out[1][n], 0, 5*sizeof(out[1][n][0]));

            for (i = 0; i < 12; i++) {

                out[0][n][0] += in[   i][n][0];

                out[1][n][0] += in[   i][n][1];

            }

            for (i = 0; i < 8; i++) {

                out[0][n][1] += in[12+i][n][0];

                out[1][n][1] += in[12+i][n][1];

            }

            for (i = 0; i < 4; i++) {

                out[0][n][2] += in[20+i][n][0];

                out[1][n][2] += in[20+i][n][1];

                out[0][n][3] += in[24+i][n][0];

                out[1][n][3] += in[24+i][n][1];

                out[0][n][4] += in[28+i][n][0];

                out[1][n][4] += in[28+i][n][1];

            }

        }

        for (i = 0; i < 59; i++) {

            for (n = 0; n < len; n++) {

                out[0][n][i+5] = in[i+32][n][0];

                out[1][n][i+5] = in[i+32][n][1];

            }

        }

    } else {

        for (n = 0; n < len; n++) {

            out[0][n][0] = in[0][n][0] + in[1][n][0] + in[2][n][0] +

                           in[3][n][0] + in[4][n][0] + in[5][n][0];

            out[1][n][0] = in[0][n][1] + in[1][n][1] + in[2][n][1] +

                           in[3][n][1] + in[4][n][1] + in[5][n][1];

            out[0][n][1] = in[6][n][0] + in[7][n][0];

            out[1][n][1] = in[6][n][1] + in[7][n][1];

            out[0][n][2] = in[8][n][0] + in[9][n][0];

            out[1][n][2] = in[8][n][1] + in[9][n][1];

        }

        for (i = 0; i < 61; i++) {

            for (n = 0; n < len; n++) {

                out[0][n][i+3] = in[i+10][n][0];

                out[1][n][i+3] = in[i+10][n][1];

            }

        }

    }

}

static void hybrid_synthesis(float out[2][38][64], float in[91][32][2], int is34, int len)

{

    int i, n;

    if (is34) {

        for (n = 0; n < len; n++) {

            memset(out[0][n], 0, 5*sizeof(out[0][n][0]));

            memset(out[1][n], 0, 5*sizeof(out[1][n][0]));

            for (i = 0; i < 12; i++) {

                out[0][n][0] += in[   i][n][0];

                out[1][n][0] += in[   i][n][1];

            }

            for (i = 0; i < 8; i++) {

                out[0][n][1] += in[12+i][n][0];

                out[1][n][1] += in[12+i][n][1];

            }

            for (i = 0; i < 4; i++) {

                out[0][n][2] += in[20+i][n][0];

                out[1][n][2] += in[20+i][n][1];

                out[0][n][3] += in[24+i][n][0];

                out[1][n][3] += in[24+i][n][1];

                out[0][n][4] += in[28+i][n][0];

                out[1][n][4] += in[28+i][n][1];

            }

        }

        for (i = 0; i < 59; i++) {

            for (n = 0; n < len; n++) {

                out[0][n][i+5] = in[i+32][n][0];

                out[1][n][i+5] = in[i+32][n][1];

            }

        }

    } else {

        for (n = 0; n < len; n++) {

            out[0][n][0] = in[0][n][0] + in[1][n][0] + in[2][n][0] +

                           in[3][n][0] + in[4][n][0] + in[5][n][0];

            out[1][n][0] = in[0][n][1] + in[1][n][1] + in[2][n][1] +

                           in[3][n][1] + in[4][n][1] + in[5][n][1];

            out[0][n][1] = in[6][n][0] + in[7][n][0];

            out[1][n][1] = in[6][n][1] + in[7][n][1];

            out[0][n][2] = in[8][n][0] + in[9][n][0];

            out[1][n][2] = in[8][n][1] + in[9][n][1];

        }

        for (i = 0; i < 61; i++) {

            for (n = 0; n < len; n++) {

                out[0][n][i+3] = in[i+10][n][0];

                out[1][n][i+3] = in[i+10][n][1];

            }

        }

    }

}

static void FUNC_0(float VAR_0[2][38][64], float VAR_1[91][32][2], int VAR_2, int VAR_3)

{

    int VAR_4, VAR_5;

    if (VAR_2) {

        for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) {

            memset(VAR_0[0][VAR_5], 0, 5*sizeof(VAR_0[0][VAR_5][0]));

            memset(VAR_0[1][VAR_5], 0, 5*sizeof(VAR_0[1][VAR_5][0]));

            for (VAR_4 = 0; VAR_4 < 12; VAR_4++) {

                VAR_0[0][VAR_5][0] += VAR_1[   VAR_4][VAR_5][0];

                VAR_0[1][VAR_5][0] += VAR_1[   VAR_4][VAR_5][1];

            }

            for (VAR_4 = 0; VAR_4 < 8; VAR_4++) {

                VAR_0[0][VAR_5][1] += VAR_1[12+VAR_4][VAR_5][0];

                VAR_0[1][VAR_5][1] += VAR_1[12+VAR_4][VAR_5][1];

            }

            for (VAR_4 = 0; VAR_4 < 4; VAR_4++) {

                VAR_0[0][VAR_5][2] += VAR_1[20+VAR_4][VAR_5][0];

                VAR_0[1][VAR_5][2] += VAR_1[20+VAR_4][VAR_5][1];

                VAR_0[0][VAR_5][3] += VAR_1[24+VAR_4][VAR_5][0];

                VAR_0[1][VAR_5][3] += VAR_1[24+VAR_4][VAR_5][1];

                VAR_0[0][VAR_5][4] += VAR_1[28+VAR_4][VAR_5][0];

                VAR_0[1][VAR_5][4] += VAR_1[28+VAR_4][VAR_5][1];

            }

        }

        for (VAR_4 = 0; VAR_4 < 59; VAR_4++) {

            for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) {

                VAR_0[0][VAR_5][VAR_4+5] = VAR_1[VAR_4+32][VAR_5][0];

                VAR_0[1][VAR_5][VAR_4+5] = VAR_1[VAR_4+32][VAR_5][1];

            }

        }

    } else {

        for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) {

            VAR_0[0][VAR_5][0] = VAR_1[0][VAR_5][0] + VAR_1[1][VAR_5][0] + VAR_1[2][VAR_5][0] +

                           VAR_1[3][VAR_5][0] + VAR_1[4][VAR_5][0] + VAR_1[5][VAR_5][0];

            VAR_0[1][VAR_5][0] = VAR_1[0][VAR_5][1] + VAR_1[1][VAR_5][1] + VAR_1[2][VAR_5][1] +

                           VAR_1[3][VAR_5][1] + VAR_1[4][VAR_5][1] + VAR_1[5][VAR_5][1];

            VAR_0[0][VAR_5][1] = VAR_1[6][VAR_5][0] + VAR_1[7][VAR_5][0];

            VAR_0[1][VAR_5][1] = VAR_1[6][VAR_5][1] + VAR_1[7][VAR_5][1];

            VAR_0[0][VAR_5][2] = VAR_1[8][VAR_5][0] + VAR_1[9][VAR_5][0];

            VAR_0[1][VAR_5][2] = VAR_1[8][VAR_5][1] + VAR_1[9][VAR_5][1];

        }

        for (VAR_4 = 0; VAR_4 < 61; VAR_4++) {

            for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) {

                VAR_0[0][VAR_5][VAR_4+3] = VAR_1[VAR_4+10][VAR_5][0];

                VAR_0[1][VAR_5][VAR_4+3] = VAR_1[VAR_4+10][VAR_5][1];

            }

        }

    }

}

static void FUNC_0(float VAR_0[2][38][64], float VAR_1[91][32][2], int VAR_2, int VAR_3)
{ int VAR_4, VAR_5; if (VAR_2) { for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) { memset(VAR_0[0][VAR_5], 0, 5*sizeof(VAR_0[0][VAR_5][0])); memset(VAR_0[1][VAR_5], 0, 5*sizeof(VAR_0[1][VAR_5][0])); for (VAR_4 = 0; VAR_4 < 12; VAR_4++) { VAR_0[0][VAR_5][0] += VAR_1[   VAR_4][VAR_5][0]; VAR_0[1][VAR_5][0] += VAR_1[   VAR_4][VAR_5][1]; } for (VAR_4 = 0; VAR_4 < 8; VAR_4++) { VAR_0[0][VAR_5][1] += VAR_1[12+VAR_4][VAR_5][0]; VAR_0[1][VAR_5][1] += VAR_1[12+VAR_4][VAR_5][1]; } for (VAR_4 = 0; VAR_4 < 4; VAR_4++) { VAR_0[0][VAR_5][2] += VAR_1[20+VAR_4][VAR_5][0]; VAR_0[1][VAR_5][2] += VAR_1[20+VAR_4][VAR_5][1]; VAR_0[0][VAR_5][3] += VAR_1[24+VAR_4][VAR_5][0]; VAR_0[1][VAR_5][3] += VAR_1[24+VAR_4][VAR_5][1]; VAR_0[0][VAR_5][4] += VAR_1[28+VAR_4][VAR_5][0]; VAR_0[1][VAR_5][4] += VAR_1[28+VAR_4][VAR_5][1]; } } for (VAR_4 = 0; VAR_4 < 59; VAR_4++) { for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) { VAR_0[0][VAR_5][VAR_4+5] = VAR_1[VAR_4+32][VAR_5][0]; VAR_0[1][VAR_5][VAR_4+5] = VAR_1[VAR_4+32][VAR_5][1]; } } } else { for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) { VAR_0[0][VAR_5][0] = VAR_1[0][VAR_5][0] + VAR_1[1][VAR_5][0] + VAR_1[2][VAR_5][0] +
VAR_1[3][VAR_5][0] + VAR_1[4][VAR_5][0] + VAR_1[5][VAR_5][0]; VAR_0[1][VAR_5][0] = VAR_1[0][VAR_5][1] + VAR_1[1][VAR_5][1] + VAR_1[2][VAR_5][1] +
VAR_1[3][VAR_5][1] + VAR_1[4][VAR_5][1] + VAR_1[5][VAR_5][1]; VAR_0[0][VAR_5][1] = VAR_1[6][VAR_5][0] + VAR_1[7][VAR_5][0]; VAR_0[1][VAR_5][1] = VAR_1[6][VAR_5][1] + VAR_1[7][VAR_5][1]; VAR_0[0][VAR_5][2] = VAR_1[8][VAR_5][0] + VAR_1[9][VAR_5][0]; VAR_0[1][VAR_5][2] = VAR_1[8][VAR_5][1] + VAR_1[9][VAR_5][1]; } for (VAR_4 = 0; VAR_4 < 61; VAR_4++) { for (VAR_5 = 0; VAR_5 < VAR_3; VAR_5++) { VAR_0[0][VAR_5][VAR_4+3] = VAR_1[VAR_4+10][VAR_5][0]; VAR_0[1][VAR_5][VAR_4+3] = VAR_1[VAR_4+10][VAR_5][1]; } } } }