public override int ReadByte()
{
EnsureDecompressionMode();
EnsureNotDisposed();
// Try to read a single byte from zlib without allocating an array, pinning an array, etc.
// If zlib doesn't have any data, fall back to the base stream implementation, which will do that.
byte b;
return _inflater.Inflate(out b) ? b : base.ReadByte();
}