int entries = keys.size();
int keysOffset = CompressedBlockReader.PREFIX_OFFSET + this.prefix.length;
int valsOffset = keysOffset + keyBuf.limit();
ByteBuffer returnBuf = ByteBuffer.wrap(new byte[valsOffset + valBuf.limit()]);
/*
* the header consist of 4 : ptr to vals 4 : ptr to keys 4 : number of
* entries 4 : -1 => variable keys, or n => length of fixed size keys 4
* : -1 => variable values, or n => length of fixed size values k :
* prefix ... start of keys