public byte[] ReadBytesUntil(byte value) { var index = Array.IndexOf(_data, value, _position); if (index == -1) { Position = Length; throw new EndOfStreamException(); } return ReadBytes(index - _position); }