static int get_max_p_order(int max_porder, int n, int order)

{

    int porder, max_parts;



    porder = max_porder;

    while(porder > 0) {

        max_parts = (1 << porder);

        if(!(n % max_parts) && (n > max_parts*order)) {

            break;

        }

        porder--;

    }

    return porder;

}

static int get_max_p_order(int max_porder, int n, int order)

{

    int porder, max_parts;



    porder = max_porder;

    while(porder > 0) {

        max_parts = (1 << porder);

        if(!(n % max_parts) && (n > max_parts*order)) {

            break;

        }

        porder--;

    }

    return porder;

}

static int FUNC_0(int VAR_0, int VAR_1, int VAR_2)

{

    int VAR_3, VAR_4;



    VAR_3 = VAR_0;

    while(VAR_3 > 0) {

        VAR_4 = (1 << VAR_3);

        if(!(VAR_1 % VAR_4) && (VAR_1 > VAR_4*VAR_2)) {

            break;

        }

        VAR_3--;

    }

    return VAR_3;

}

static int FUNC_0(int VAR_0, int VAR_1, int VAR_2)
{ int VAR_3, VAR_4; VAR_3 = VAR_0; while(VAR_3 > 0) { VAR_4 = (1 << VAR_3); if(!(VAR_1 % VAR_4) && (VAR_1 > VAR_4*VAR_2)) { break; } VAR_3--; } return VAR_3; }