PEEK
while (MORE() && isdigit((uch)PEEK()) && count <= DUPMAX) {
while (MORE() && PEEK() != ']' && !SEETWO('-', ']'))
switch ((MORE()) ? PEEK() : '\0') {
c = PEEK();
c = PEEK();
while (MORE() && isalpha((uch)PEEK()))
#define SEE(c) (MORE() && PEEK() == (c))
#define SEETWO(a, b) (MORE2() && PEEK() == (a) && PEEK2() == (b))
#define MUSTSEE(c, e) (REQUIRE(MORE() && PEEK() == (c), e))
#define MUSTNOTSEE(c, e) (REQUIRE(!MORE() || PEEK() != (c), e))
(void)REQUIRE(!MORE() || !isdigit((uch)PEEK()), REG_BADRPT);
c = PEEK();
if (isdigit((uch)PEEK())) {
while (MORE() && PEEK() != '}')
c = PEEK();
if (MORE() && isdigit((uch)PEEK())) {