boolean matchbracketclass(int c, int poff, int ec) {
			boolean sig = true;
			if (p.luaByte(poff + 1) == '^') {
				sig = false;
				poff++;
			}
			while (++poff < ec) {
				if (p.luaByte(poff) == L_ESC) {
					poff++;
					if (match_class(c, p.luaByte(poff)))
						return sig;
				} else if ((p.luaByte(poff + 1) == '-') && (poff + 2 < ec)) {
					poff += 2;
					if (p.luaByte(poff - 2) <= c && c <= p.luaByte(poff))
						return sig;
				} else if (p.luaByte(poff) == c)
					return sig;
			}
			return !sig;
		}