import checkedint.sticky : safeOp; // use IntFlagPolicy.sticky
assert(safeOp.modPow2( 101,  1) ==  1);
assert(safeOp.modPow2( 101,  3) ==  5);
assert(safeOp.modPow2(-101,  3) == -5);
assert(safeOp.modPow2(101, -2) ==  0);
assert(safeOp.modPow2(101, 1_000) == 101);
Equivalent to left % pow(2, exp), but faster and works with a wider range of inputs. This is a safer alternative to left & ((1 << exp) - 1) that is still very fast.