private int ReadChar() { if (this.characters.Count > 0) return this.characters.Pop(); return this.reader.Read(); }