static void sr_1d97_float(float *p, int i0, int i1)

{

    int i;



    if (i1 <= i0 + 1) {

        if (i0 == 1)

            p[1] *= F_LFTG_K/2;

        else

            p[0] *= F_LFTG_X/2;

        return;

    }



    extend97_float(p, i0, i1);



    for (i = i0 / 2 - 1; i < i1 / 2 + 2; i++)

        p[2 * i]     -= F_LFTG_DELTA * (p[2 * i - 1] + p[2 * i + 1]);

    /* step 4 */

    for (i = i0 / 2 - 1; i < i1 / 2 + 1; i++)

        p[2 * i + 1] -= F_LFTG_GAMMA * (p[2 * i]     + p[2 * i + 2]);

    /*step 5*/

    for (i = i0 / 2; i < i1 / 2 + 1; i++)

        p[2 * i]     += F_LFTG_BETA  * (p[2 * i - 1] + p[2 * i + 1]);

    /* step 6 */

    for (i = i0 / 2; i < i1 / 2; i++)

        p[2 * i + 1] += F_LFTG_ALPHA * (p[2 * i]     + p[2 * i + 2]);

}

static void sr_1d97_float(float *p, int i0, int i1)

{

    int i;



    if (i1 <= i0 + 1) {

        if (i0 == 1)

            p[1] *= F_LFTG_K/2;

        else

            p[0] *= F_LFTG_X/2;

        return;

    }



    extend97_float(p, i0, i1);



    for (i = i0 / 2 - 1; i < i1 / 2 + 2; i++)

        p[2 * i]     -= F_LFTG_DELTA * (p[2 * i - 1] + p[2 * i + 1]);

    

    for (i = i0 / 2 - 1; i < i1 / 2 + 1; i++)

        p[2 * i + 1] -= F_LFTG_GAMMA * (p[2 * i]     + p[2 * i + 2]);

    

    for (i = i0 / 2; i < i1 / 2 + 1; i++)

        p[2 * i]     += F_LFTG_BETA  * (p[2 * i - 1] + p[2 * i + 1]);

    

    for (i = i0 / 2; i < i1 / 2; i++)

        p[2 * i + 1] += F_LFTG_ALPHA * (p[2 * i]     + p[2 * i + 2]);

}

            p[0] *= F_LFTG_X/2;
static void FUNC_0(float *VAR_0, int VAR_1, int VAR_2)

{

    int VAR_3;



    if (VAR_2 <= VAR_1 + 1) {

        if (VAR_1 == 1)

            VAR_0[1] *= F_LFTG_K/2;

        else

            VAR_0[0] *= F_LFTG_X/2;

        return;

    }



    extend97_float(VAR_0, VAR_1, VAR_2);



    for (VAR_3 = VAR_1 / 2 - 1; VAR_3 < VAR_2 / 2 + 2; VAR_3++)

        VAR_0[2 * VAR_3]     -= F_LFTG_DELTA * (VAR_0[2 * VAR_3 - 1] + VAR_0[2 * VAR_3 + 1]);

    

    for (VAR_3 = VAR_1 / 2 - 1; VAR_3 < VAR_2 / 2 + 1; VAR_3++)

        VAR_0[2 * VAR_3 + 1] -= F_LFTG_GAMMA * (VAR_0[2 * VAR_3]     + VAR_0[2 * VAR_3 + 2]);

    

    for (VAR_3 = VAR_1 / 2; VAR_3 < VAR_2 / 2 + 1; VAR_3++)

        VAR_0[2 * VAR_3]     += F_LFTG_BETA  * (VAR_0[2 * VAR_3 - 1] + VAR_0[2 * VAR_3 + 1]);

    

    for (VAR_3 = VAR_1 / 2; VAR_3 < VAR_2 / 2; VAR_3++)

        VAR_0[2 * VAR_3 + 1] += F_LFTG_ALPHA * (VAR_0[2 * VAR_3]     + VAR_0[2 * VAR_3 + 2]);

}

static void FUNC_0(float *VAR_0, int VAR_1, int VAR_2)
{ int VAR_3; if (VAR_2 <= VAR_1 + 1) { if (VAR_1 == 1)
VAR_0[1] *= F_LFTG_K/2; else
VAR_0[0] *= F_LFTG_X/2; return; } extend97_float(VAR_0, VAR_1, VAR_2); for (VAR_3 = VAR_1 / 2 - 1; VAR_3 < VAR_2 / 2 + 2; VAR_3++) VAR_0[2 * VAR_3]     -= F_LFTG_DELTA * (VAR_0[2 * VAR_3 - 1] + VAR_0[2 * VAR_3 + 1]); for (VAR_3 = VAR_1 / 2 - 1; VAR_3 < VAR_2 / 2 + 1; VAR_3++) VAR_0[2 * VAR_3 + 1] -= F_LFTG_GAMMA * (VAR_0[2 * VAR_3]     + VAR_0[2 * VAR_3 + 2]); for (VAR_3 = VAR_1 / 2; VAR_3 < VAR_2 / 2 + 1; VAR_3++) VAR_0[2 * VAR_3]     += F_LFTG_BETA  * (VAR_0[2 * VAR_3 - 1] + VAR_0[2 * VAR_3 + 1]); for (VAR_3 = VAR_1 / 2; VAR_3 < VAR_2 / 2; VAR_3++) VAR_0[2 * VAR_3 + 1] += F_LFTG_ALPHA * (VAR_0[2 * VAR_3]     + VAR_0[2 * VAR_3 + 2]); }