static inline int range_get_symbol(APEContext * ctx,

                                   const uint32_t counts[],

                                   const uint16_t counts_diff[])

{

    int symbol, cf;



    cf = range_decode_culshift(ctx, 16);










    /* figure out the symbol inefficiently; a binary search would be much better */

    for (symbol = 0; counts[symbol + 1] <= cf; symbol++);



    range_decode_update(ctx, counts_diff[symbol], counts[symbol]);




static inline int range_get_symbol(APEContext * ctx,

                                   const uint32_t counts[],

                                   const uint16_t counts_diff[])

{

    int symbol, cf;



    cf = range_decode_culshift(ctx, 16);










    

    for (symbol = 0; counts[symbol + 1] <= cf; symbol++);



    range_decode_update(ctx, counts_diff[symbol], counts[symbol]);




static inline int FUNC_0(APEContext * VAR_0,

                                   const uint32_t VAR_1[],

                                   const uint16_t VAR_2[])

{

    int VAR_3, VAR_4;



    VAR_4 = range_decode_culshift(VAR_0, 16);










    

    for (VAR_3 = 0; VAR_1[VAR_3 + 1] <= VAR_4; VAR_3++);



    range_decode_update(VAR_0, VAR_2[VAR_3], VAR_1[VAR_3]);




static inline int FUNC_0(APEContext * VAR_0,
const uint32_t VAR_1[],
const uint16_t VAR_2[])
{ int VAR_3, VAR_4; VAR_4 = range_decode_culshift(VAR_0, 16); for (VAR_3 = 0; VAR_1[VAR_3 + 1] <= VAR_4; VAR_3++); range_decode_update(VAR_0, VAR_2[VAR_3], VAR_1[VAR_3]);