for (NumWithInfo nwi : genNumWithInfos(Integer.SIZE)) {
stream.writeInt(nwi.getNumber().intValue(), nwi.getBits());
}
stream.writeBit(1);
stream.readBit();
for (NumWithInfo nwi : genNumWithInfos(Integer.SIZE)) {
BigInteger mask = BigInteger.valueOf(2).pow(nwi.getBits()).subtract(BigInteger.ONE);