private static int TableLookupStep(int fraction, int mask, int power) { int shift = 32 - 2 * power; if (shift >= 0) { return (((int)(((uint)fraction) >> shift)) & mask) | 1; } else { return (fraction & ((int)(((uint)mask) >> -shift))) | 1; } }