public virtual int readInt()
{
if (pos + 3 < len)
{
// common, fast case
return ((buf[pos++] << 24) | ((0xFF & buf[pos++]) << 16) | ((0xFF & buf[pos++]) << 8) | (0xFF & buf[pos++]));
}
// general case
return (read() << 24) | (read() << 16) | (read() << 8) | read();
}