static int readCompressed30BitUint(IF0_Byte readByte) { int i = ubyteToInt(readByte!); if (i < 0x40) ret i; if (i < 0x80) ret ((i & 0x3F) << 8) | ubyteToInt(readByte!); int j = ubyteToInt(readByte!); if (i < 0xC0) ret ((i & 0x3F) << 16) | (j << 8) | ubyteToInt(readByte!); int k = ubyteToInt(readByte!); ret ((i & 0x3F) << 24) | (j << 16) | (k << 8) | ubyteToInt(readByte!); }