
return (b & mask) != 0;
</BUG>
}
<BUG>private static boolean isEmpty(int[] header, int i)
</BUG>
{
<BUG>int b = header[i / 4];
int mask = 1 << ((i % 4) * 2);

return (b & mask) != 0;
</BUG>
}

{
assert size > 0;
ByteBuffer[] values = new ByteBuffer[size];
int offset = 0;
while (offset < size)
{
long header = in.readUnsignedVInt();
int limit = Math.min(size, offset + 32);
while (offset < limit)
{
values[offset] = isNull(header, offset)
? null
: (isEmpty(header, offset) ? ByteBufferUtil.EMPTY_BYTE_BUFFER : types.get(offset).readValue(in));
offset++;
