@Override protected void parse() throws ProtocolException { cursor = offset; final int hashCount = (int) readVarInt(); optimalEncodingMessageSize += VarInt.sizeOf(hashCount); hashes = new ArrayList<Sha256Hash>(hashCount); for (int hashIdx = 0; hashIdx < hashCount; hashIdx++) { hashes.add(readHash()); } optimalEncodingMessageSize += 32 * hashCount; setIndex(readUint32()); optimalEncodingMessageSize += 4; length = cursor - offset; }