protected char NextChar() { while (true) { if (ptr >= text.Length) return EOT; char c = text[ptr++]; if (c > ' ') return c; } }