static int readCompressed30BitUint_IByteMemory64(IByteMemory64 mem, long ptr) { int i = ubyteToInt(mem.getByte(ptr)); if (i < 0x40) ret i; int j = ubyteToInt(mem.getByte(++ptr)); if (i < 0x80) ret ((i & 0x3F) << 8) | j; int k = ubyteToInt(mem.getByte(++ptr)); if (i < 0xC0) ret ((i & 0x3F) << 16) | (j << 8) | k; ret ((i & 0x3F) << 24) | (j << 16) | (k << 8) | ubyteToInt(mem.getByte(++ptr)); }