public int ReadUnsignedByte() { int ch = this.Read(); if (ch < 0) throw new EndOfStreamException(); return ch; }