internal int ReadByte(long offset)
{
if (offset < 0L) throw new ArgumentOutOfRangeException("offset");
if (offset >= _wrapper.EofOffset) return -1;
int count = 1;
var startIdx = EnsureAvailable(offset, ref count, false);
if (count == 1)
{
return _data[startIdx];
}
return -1;
}