/* Generated by re2c */
// re2c $INPUT -o $OUTPUT -bi --case-insensitive
#include <stdlib.h>
#include "chunk.h"
#include "scanners.h"

int _scan_at(int (*scanner)(const unsigned char *), cmark_chunk *c, int offset)
{
    int res;
    unsigned char *ptr = (unsigned char *)c->data;
    unsigned char lim = ptr[c->len];

    ptr[c->len] = '\0';
    res = scanner(ptr + offset);
    ptr[c->len] = lim;

    return res;
}



// Try to match URI autolink after first <, returning number of chars matched.
int _scan_autolink_uri(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128,   0, 128,   0, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128
	};
	yych = *p;
	switch (yych) {
		case '\n': goto yy1;
		case 'A':
		case 'a': goto yy3;
		case 'B':
		case 'b': goto yy4;
		case 'C':
		case 'c': goto yy5;
		case 'D':
		case 'd': goto yy6;
		case 'E':
		case 'e': goto yy7;
		case 'F':
		case 'f': goto yy8;
		case 'G':
		case 'g': goto yy9;
		case 'H':
		case 'h': goto yy10;
		case 'I':
		case 'i': goto yy11;
		case 'J':
		case 'j': goto yy12;
		case 'K':
		case 'k': goto yy13;
		case 'L':
		case 'l': goto yy14;
		case 'M':
		case 'm': goto yy15;
		case 'N':
		case 'n': goto yy16;
		case 'O':
		case 'o': goto yy17;
		case 'P':
		case 'p': goto yy18;
		case 'Q':
		case 'q': goto yy19;
		case 'R':
		case 'r': goto yy20;
		case 'S':
		case 's': goto yy21;
		case 'T':
		case 't': goto yy22;
		case 'U':
		case 'u': goto yy23;
		case 'V':
		case 'v': goto yy24;
		case 'W':
		case 'w': goto yy25;
		case 'X':
		case 'x': goto yy26;
		case 'Y':
		case 'y': goto yy27;
		case 'Z':
		case 'z': goto yy28;
		default: goto yy2;
	}
yy1:
	{ return 0; }
yy2:
	++p;
	goto yy1;
yy3:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy29;
		case 'B':
		case 'b': goto yy31;
		case 'C':
		case 'c': goto yy32;
		case 'D':
		case 'd': goto yy33;
		case 'F':
		case 'f': goto yy34;
		case 'I':
		case 'i': goto yy35;
		case 'P':
		case 'p': goto yy36;
		case 'T':
		case 't': goto yy37;
		case 'W':
		case 'w': goto yy38;
		default: goto yy1;
	}
yy4:
	yych = *(marker = ++p);
	if (yych <= 'O') {
		if (yych <= 'H') {
			if (yych == 'E') goto yy39;
			goto yy1;
		} else {
			if (yych <= 'I') goto yy40;
			if (yych <= 'N') goto yy1;
			goto yy41;
		}
	} else {
		if (yych <= 'h') {
			if (yych == 'e') goto yy39;
			goto yy1;
		} else {
			if (yych <= 'i') goto yy40;
			if (yych == 'o') goto yy41;
			goto yy1;
		}
	}
yy5:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy42;
		case 'H':
		case 'h': goto yy43;
		case 'I':
		case 'i': goto yy44;
		case 'O':
		case 'o': goto yy45;
		case 'R':
		case 'r': goto yy46;
		case 'V':
		case 'v': goto yy47;
		default: goto yy1;
	}
yy6:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy48;
		case 'I':
		case 'i': goto yy49;
		case 'L':
		case 'l': goto yy50;
		case 'N':
		case 'n': goto yy47;
		case 'O':
		case 'o': goto yy51;
		case 'T':
		case 't': goto yy52;
		case 'V':
		case 'v': goto yy53;
		default: goto yy1;
	}
yy7:
	yych = *(marker = ++p);
	if (yych == 'D') goto yy54;
	if (yych == 'd') goto yy54;
	goto yy1;
yy8:
	yych = *(marker = ++p);
	if (yych <= 'T') {
		if (yych <= 'E') {
			if (yych == 'A') goto yy55;
			if (yych <= 'D') goto yy1;
			goto yy56;
		} else {
			if (yych == 'I') goto yy57;
			if (yych <= 'S') goto yy1;
			goto yy58;
		}
	} else {
		if (yych <= 'e') {
			if (yych == 'a') goto yy55;
			if (yych <= 'd') goto yy1;
			goto yy56;
		} else {
			if (yych <= 'i') {
				if (yych <= 'h') goto yy1;
				goto yy57;
			} else {
				if (yych == 't') goto yy58;
				goto yy1;
			}
		}
	}
yy9:
	yych = *(marker = ++p);
	switch (yych) {
		case 'E':
		case 'e': goto yy59;
		case 'G':
		case 'g': goto yy38;
		case 'I':
		case 'i': goto yy60;
		case 'O':
		case 'o': goto yy61;
		case 'T':
		case 't': goto yy62;
		default: goto yy1;
	}
yy10:
	yych = *(marker = ++p);
	if (yych <= 'S') {
		if (yych <= '3') {
			if (yych <= '2') goto yy1;
			goto yy63;
		} else {
			if (yych == 'C') goto yy58;
			goto yy1;
		}
	} else {
		if (yych <= 'c') {
			if (yych <= 'T') goto yy64;
			if (yych <= 'b') goto yy1;
			goto yy58;
		} else {
			if (yych == 't') goto yy64;
			goto yy1;
		}
	}
yy11:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy65;
		case 'C':
		case 'c': goto yy66;
		case 'M':
		case 'm': goto yy67;
		case 'N':
		case 'n': goto yy68;
		case 'P':
		case 'p': goto yy69;
		case 'R':
		case 'r': goto yy70;
		case 'T':
		case 't': goto yy71;
		default: goto yy1;
	}
yy12:
	yych = *(marker = ++p);
	if (yych <= 'M') {
		if (yych == 'A') goto yy72;
		if (yych <= 'L') goto yy1;
		goto yy47;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy1;
			goto yy72;
		} else {
			if (yych == 'm') goto yy47;
			goto yy1;
		}
	}
yy13:
	yych = *(marker = ++p);
	if (yych == 'E') goto yy73;
	if (yych == 'e') goto yy73;
	goto yy1;
yy14:
	yych = *(marker = ++p);
	if (yych <= 'D') {
		if (yych == 'A') goto yy74;
		if (yych <= 'C') goto yy1;
		goto yy75;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy1;
			goto yy74;
		} else {
			if (yych == 'd') goto yy75;
			goto yy1;
		}
	}
yy15:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy76;
		case 'E':
		case 'e': goto yy77;
		case 'I':
		case 'i': goto yy44;
		case 'M':
		case 'm': goto yy47;
		case 'S':
		case 's': goto yy78;
		case 'T':
		case 't': goto yy79;
		case 'U':
		case 'u': goto yy80;
		case 'V':
		case 'v': goto yy52;
		default: goto yy1;
	}
yy16:
	yych = *(marker = ++p);
	switch (yych) {
		case 'E':
		case 'e': goto yy81;
		case 'F':
		case 'f': goto yy47;
		case 'I':
		case 'i': goto yy82;
		case 'N':
		case 'n': goto yy83;
		case 'O':
		case 'o': goto yy84;
		default: goto yy1;
	}
yy17:
	yych = *(marker = ++p);
	if (yych <= 'P') {
		if (yych == 'I') goto yy44;
		if (yych <= 'O') goto yy1;
		goto yy85;
	} else {
		if (yych <= 'i') {
			if (yych <= 'h') goto yy1;
			goto yy44;
		} else {
			if (yych == 'p') goto yy85;
			goto yy1;
		}
	}
yy18:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy86;
		case 'L':
		case 'l': goto yy87;
		case 'O':
		case 'o': goto yy58;
		case 'R':
		case 'r': goto yy88;
		case 'S':
		case 's': goto yy89;
		default: goto yy1;
	}
yy19:
	yych = *(marker = ++p);
	if (yych == 'U') goto yy90;
	if (yych == 'u') goto yy90;
	goto yy1;
yy20:
	yych = *(marker = ++p);
	if (yych <= 'T') {
		if (yych <= 'L') {
			if (yych == 'E') goto yy91;
			goto yy1;
		} else {
			if (yych <= 'M') goto yy51;
			if (yych <= 'R') goto yy1;
			if (yych <= 'S') goto yy92;
			goto yy93;
		}
	} else {
		if (yych <= 'm') {
			if (yych == 'e') goto yy91;
			if (yych <= 'l') goto yy1;
			goto yy51;
		} else {
			if (yych <= 'r') goto yy1;
			if (yych <= 's') goto yy92;
			if (yych <= 't') goto yy93;
			goto yy1;
		}
	}
yy21:
	yych = *(marker = ++p);
	switch (yych) {
		case 'E':
		case 'e': goto yy94;
		case 'F':
		case 'f': goto yy83;
		case 'G':
		case 'V':
		case 'g':
		case 'v': goto yy52;
		case 'H':
		case 'h': goto yy95;
		case 'I':
		case 'i': goto yy96;
		case 'K':
		case 'k': goto yy97;
		case 'M':
		case 'm': goto yy98;
		case 'N':
		case 'n': goto yy99;
		case 'O':
		case 'o': goto yy100;
		case 'P':
		case 'p': goto yy101;
		case 'S':
		case 's': goto yy102;
		case 'T':
		case 't': goto yy103;
		default: goto yy1;
	}
yy22:
	yych = *(marker = ++p);
	switch (yych) {
		case 'A':
		case 'a': goto yy104;
		case 'E':
		case 'e': goto yy105;
		case 'F':
		case 'f': goto yy83;
		case 'H':
		case 'h': goto yy106;
		case 'I':
		case 'i': goto yy58;
		case 'N':
		case 'n': goto yy107;
		case 'V':
		case 'v': goto yy38;
		default: goto yy1;
	}
yy23:
	yych = *(marker = ++p);
	if (yych <= 'T') {
		if (yych <= 'N') {
			if (yych == 'D') goto yy58;
			if (yych <= 'M') goto yy1;
			goto yy108;
		} else {
			if (yych == 'R') goto yy52;
			if (yych <= 'S') goto yy1;
			goto yy109;
		}
	} else {
		if (yych <= 'n') {
			if (yych == 'd') goto yy58;
			if (yych <= 'm') goto yy1;
			goto yy108;
		} else {
			if (yych <= 'r') {
				if (yych <= 'q') goto yy1;
				goto yy52;
			} else {
				if (yych == 't') goto yy109;
				goto yy1;
			}
		}
	}
yy24:
	yych = *(marker = ++p);
	if (yych <= 'I') {
		if (yych == 'E') goto yy110;
		if (yych <= 'H') goto yy1;
		goto yy111;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy1;
			goto yy110;
		} else {
			if (yych == 'i') goto yy111;
			goto yy1;
		}
	}
yy25:
	yych = *(marker = ++p);
	if (yych <= 'Y') {
		if (yych <= 'R') {
			if (yych == 'E') goto yy112;
			goto yy1;
		} else {
			if (yych <= 'S') goto yy113;
			if (yych <= 'T') goto yy114;
			if (yych <= 'X') goto yy1;
			goto yy115;
		}
	} else {
		if (yych <= 's') {
			if (yych == 'e') goto yy112;
			if (yych <= 'r') goto yy1;
			goto yy113;
		} else {
			if (yych <= 't') goto yy114;
			if (yych == 'y') goto yy115;
			goto yy1;
		}
	}
yy26:
	yych = *(marker = ++p);
	if (yych <= 'R') {
		if (yych <= 'F') {
			if (yych == 'C') goto yy116;
			if (yych <= 'E') goto yy1;
			goto yy117;
		} else {
			if (yych == 'M') goto yy118;
			if (yych <= 'Q') goto yy1;
			goto yy51;
		}
	} else {
		if (yych <= 'f') {
			if (yych == 'c') goto yy116;
			if (yych <= 'e') goto yy1;
			goto yy117;
		} else {
			if (yych <= 'm') {
				if (yych <= 'l') goto yy1;
				goto yy118;
			} else {
				if (yych == 'r') goto yy51;
				goto yy1;
			}
		}
	}
yy27:
	yych = *(marker = ++p);
	if (yych == 'M') goto yy119;
	if (yych == 'm') goto yy119;
	goto yy1;
yy28:
	yych = *(marker = ++p);
	if (yych == '3') goto yy120;
	goto yy1;
yy29:
	yych = *++p;
	if (yych == 'A') goto yy113;
	if (yych == 'a') goto yy113;
yy30:
	p = marker;
	goto yy1;
yy31:
	yych = *++p;
	if (yych == 'O') goto yy121;
	if (yych == 'o') goto yy121;
	goto yy30;
yy32:
	yych = *++p;
	if (yych == 'A') goto yy58;
	if (yych == 'a') goto yy58;
	goto yy30;
yy33:
	yych = *++p;
	if (yych == 'I') goto yy122;
	if (yych == 'i') goto yy122;
	goto yy30;
yy34:
	yych = *++p;
	if (yych <= 'S') {
		if (yych == 'P') goto yy38;
		if (yych <= 'R') goto yy30;
		goto yy38;
	} else {
		if (yych <= 'p') {
			if (yych <= 'o') goto yy30;
			goto yy38;
		} else {
			if (yych == 's') goto yy38;
			goto yy30;
		}
	}
yy35:
	yych = *++p;
	if (yych == 'M') goto yy38;
	if (yych == 'm') goto yy38;
	goto yy30;
yy36:
	yych = *++p;
	if (yych == 'T') goto yy38;
	if (yych == 't') goto yy38;
	goto yy30;
yy37:
	yych = *++p;
	if (yych == 'T') goto yy123;
	if (yych == 't') goto yy123;
	goto yy30;
yy38:
	yych = *++p;
	if (yych == ':') goto yy124;
	goto yy30;
yy39:
	yych = *++p;
	if (yych == 'S') goto yy125;
	if (yych == 's') goto yy125;
	goto yy30;
yy40:
	yych = *++p;
	if (yych == 'T') goto yy126;
	if (yych == 't') goto yy126;
	goto yy30;
yy41:
	yych = *++p;
	if (yych == 'L') goto yy59;
	if (yych == 'l') goto yy59;
	goto yy30;
yy42:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'L') goto yy127;
		if (yych <= 'O') goto yy30;
		goto yy38;
	} else {
		if (yych <= 'l') {
			if (yych <= 'k') goto yy30;
			goto yy127;
		} else {
			if (yych == 'p') goto yy38;
			goto yy30;
		}
	}
yy43:
	yych = *++p;
	if (yych == 'R') goto yy128;
	if (yych == 'r') goto yy128;
	goto yy30;
yy44:
	yych = *++p;
	if (yych == 'D') goto yy38;
	if (yych == 'd') goto yy38;
	goto yy30;
yy45:
	yych = *++p;
	if (yych <= 'N') {
		if (yych <= 'A') {
			if (yych <= '@') goto yy30;
			goto yy58;
		} else {
			if (yych <= 'L') goto yy30;
			if (yych <= 'M') goto yy129;
			goto yy130;
		}
	} else {
		if (yych <= 'l') {
			if (yych == 'a') goto yy58;
			goto yy30;
		} else {
			if (yych <= 'm') goto yy129;
			if (yych <= 'n') goto yy130;
			goto yy30;
		}
	}
yy46:
	yych = *++p;
	if (yych == 'I') goto yy44;
	if (yych == 'i') goto yy44;
	goto yy30;
yy47:
	yych = *++p;
	if (yych == 'S') goto yy38;
	if (yych == 's') goto yy38;
	goto yy30;
yy48:
	yych = *++p;
	if (yych <= 'V') {
		if (yych == 'T') goto yy131;
		if (yych <= 'U') goto yy30;
		goto yy38;
	} else {
		if (yych <= 't') {
			if (yych <= 's') goto yy30;
			goto yy131;
		} else {
			if (yych == 'v') goto yy38;
			goto yy30;
		}
	}
yy49:
	yych = *++p;
	if (yych == 'C') goto yy36;
	if (yych == 'c') goto yy36;
	goto yy30;
yy50:
	yych = *++p;
	if (yych == 'N') goto yy132;
	if (yych == 'n') goto yy132;
	goto yy30;
yy51:
	yych = *++p;
	if (yych == 'I') goto yy38;
	if (yych == 'i') goto yy38;
	goto yy30;
yy52:
	yych = *++p;
	if (yych == 'N') goto yy38;
	if (yych == 'n') goto yy38;
	goto yy30;
yy53:
	yych = *++p;
	if (yych == 'B') goto yy38;
	if (yych == 'b') goto yy38;
	goto yy30;
yy54:
	yych = *++p;
	if (yych == '2') goto yy133;
	goto yy30;
yy55:
	yych = *++p;
	if (yych == 'C') goto yy134;
	if (yych == 'c') goto yy134;
	goto yy30;
yy56:
	yych = *++p;
	if (yych == 'E') goto yy44;
	if (yych == 'e') goto yy44;
	goto yy30;
yy57:
	yych = *++p;
	if (yych <= 'S') {
		if (yych <= 'M') {
			if (yych == 'L') goto yy135;
			goto yy30;
		} else {
			if (yych <= 'N') goto yy136;
			if (yych <= 'R') goto yy30;
			goto yy102;
		}
	} else {
		if (yych <= 'm') {
			if (yych == 'l') goto yy135;
			goto yy30;
		} else {
			if (yych <= 'n') goto yy136;
			if (yych == 's') goto yy102;
			goto yy30;
		}
	}
yy58:
	yych = *++p;
	if (yych == 'P') goto yy38;
	if (yych == 'p') goto yy38;
	goto yy30;
yy59:
	yych = *++p;
	if (yych == 'O') goto yy38;
	if (yych == 'o') goto yy38;
	goto yy30;
yy60:
	yych = *++p;
	if (yych <= 'Z') {
		if (yych == 'T') goto yy38;
		if (yych <= 'Y') goto yy30;
		goto yy137;
	} else {
		if (yych <= 't') {
			if (yych <= 's') goto yy30;
			goto yy38;
		} else {
			if (yych == 'z') goto yy137;
			goto yy30;
		}
	}
yy61:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'P') goto yy138;
		if (yych == 'p') goto yy138;
		goto yy30;
	}
yy62:
	yych = *++p;
	if (yych == 'A') goto yy139;
	if (yych == 'a') goto yy139;
	goto yy30;
yy63:
	yych = *++p;
	if (yych == '2') goto yy140;
	goto yy30;
yy64:
	yych = *++p;
	if (yych == 'T') goto yy141;
	if (yych == 't') goto yy141;
	goto yy30;
yy65:
	yych = *++p;
	if (yych == 'X') goto yy38;
	if (yych == 'x') goto yy38;
	goto yy30;
yy66:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'A') goto yy58;
		if (yych <= 'N') goto yy30;
		goto yy52;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy30;
			goto yy58;
		} else {
			if (yych == 'o') goto yy52;
			goto yy30;
		}
	}
yy67:
	yych = *++p;
	if (yych <= '@') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'A') goto yy58;
		if (yych == 'a') goto yy58;
		goto yy30;
	}
yy68:
	yych = *++p;
	if (yych == 'F') goto yy59;
	if (yych == 'f') goto yy59;
	goto yy30;
yy69:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'N') goto yy38;
		if (yych <= 'O') goto yy30;
		goto yy38;
	} else {
		if (yych <= 'n') {
			if (yych <= 'm') goto yy30;
			goto yy38;
		} else {
			if (yych == 'p') goto yy38;
			goto yy30;
		}
	}
yy70:
	yych = *++p;
	if (yych <= 'I') {
		if (yych == 'C') goto yy142;
		if (yych <= 'H') goto yy30;
		goto yy143;
	} else {
		if (yych <= 'c') {
			if (yych <= 'b') goto yy30;
			goto yy142;
		} else {
			if (yych == 'i') goto yy143;
			goto yy30;
		}
	}
yy71:
	yych = *++p;
	if (yych == 'M') goto yy47;
	if (yych == 'm') goto yy47;
	goto yy30;
yy72:
	yych = *++p;
	if (yych <= 'V') {
		if (yych == 'R') goto yy38;
		if (yych <= 'U') goto yy30;
		goto yy144;
	} else {
		if (yych <= 'r') {
			if (yych <= 'q') goto yy30;
			goto yy38;
		} else {
			if (yych == 'v') goto yy144;
			goto yy30;
		}
	}
yy73:
	yych = *++p;
	if (yych == 'Y') goto yy145;
	if (yych == 'y') goto yy145;
	goto yy30;
yy74:
	yych = *++p;
	if (yych == 'S') goto yy146;
	if (yych == 's') goto yy146;
	goto yy30;
yy75:
	yych = *++p;
	if (yych == 'A') goto yy141;
	if (yych == 'a') goto yy141;
	goto yy30;
yy76:
	yych = *++p;
	switch (yych) {
		case 'G':
		case 'g': goto yy147;
		case 'I':
		case 'i': goto yy127;
		case 'P':
		case 'p': goto yy47;
		case 'R':
		case 'r': goto yy148;
		default: goto yy30;
	}
yy77:
	yych = *++p;
	if (yych == 'S') goto yy149;
	if (yych == 's') goto yy149;
	goto yy30;
yy78:
	yych = *++p;
	if (yych <= 'Q') {
		if (yych <= '-') {
			if (yych <= ',') goto yy30;
			goto yy150;
		} else {
			if (yych == 'N') goto yy151;
			goto yy30;
		}
	} else {
		if (yych <= 'n') {
			if (yych <= 'R') goto yy141;
			if (yych <= 'm') goto yy30;
			goto yy151;
		} else {
			if (yych == 'r') goto yy141;
			goto yy30;
		}
	}
yy79:
	yych = *++p;
	if (yych == 'Q') goto yy58;
	if (yych == 'q') goto yy58;
	goto yy30;
yy80:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'M') goto yy152;
		if (yych <= 'O') goto yy30;
		goto yy153;
	} else {
		if (yych <= 'm') {
			if (yych <= 'l') goto yy30;
			goto yy152;
		} else {
			if (yych == 'p') goto yy153;
			goto yy30;
		}
	}
yy81:
	yych = *++p;
	if (yych == 'W') goto yy47;
	if (yych == 'w') goto yy47;
	goto yy30;
yy82:
	yych = *++p;
	if (yych <= 'G') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'H') goto yy38;
		if (yych == 'h') goto yy38;
		goto yy30;
	}
yy83:
	yych = *++p;
	if (yych == 'T') goto yy58;
	if (yych == 't') goto yy58;
	goto yy30;
yy84:
	yych = *++p;
	if (yych == 'T') goto yy154;
	if (yych == 't') goto yy154;
	goto yy30;
yy85:
	yych = *++p;
	if (yych == 'A') goto yy155;
	if (yych == 'a') goto yy155;
	goto yy30;
yy86:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'L') goto yy35;
		if (yych <= 'O') goto yy30;
		goto yy156;
	} else {
		if (yych <= 'l') {
			if (yych <= 'k') goto yy30;
			goto yy35;
		} else {
			if (yych == 'p') goto yy156;
			goto yy30;
		}
	}
yy87:
	yych = *++p;
	if (yych == 'A') goto yy157;
	if (yych == 'a') goto yy157;
	goto yy30;
yy88:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'E') goto yy47;
		if (yych <= 'N') goto yy30;
		goto yy158;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy30;
			goto yy47;
		} else {
			if (yych == 'o') goto yy158;
			goto yy30;
		}
	}
yy89:
	yych = *++p;
	if (yych == 'Y') goto yy159;
	if (yych == 'y') goto yy159;
	goto yy30;
yy90:
	yych = *++p;
	if (yych == 'E') goto yy160;
	if (yych == 'e') goto yy160;
	goto yy30;
yy91:
	yych = *++p;
	if (yych == 'S') goto yy161;
	if (yych == 's') goto yy161;
	goto yy30;
yy92:
	yych = *++p;
	if (yych == 'Y') goto yy162;
	if (yych == 'y') goto yy162;
	goto yy30;
yy93:
	yych = *++p;
	if (yych <= 'S') {
		if (yych == 'M') goto yy58;
		if (yych <= 'R') goto yy30;
		goto yy58;
	} else {
		if (yych <= 'm') {
			if (yych <= 'l') goto yy30;
			goto yy58;
		} else {
			if (yych == 's') goto yy58;
			goto yy30;
		}
	}
yy94:
	yych = *++p;
	if (yych <= 'S') {
		if (yych <= 'C') {
			if (yych <= 'B') goto yy30;
			goto yy163;
		} else {
			if (yych <= 'Q') goto yy30;
			if (yych <= 'R') goto yy164;
			goto yy165;
		}
	} else {
		if (yych <= 'q') {
			if (yych == 'c') goto yy163;
			goto yy30;
		} else {
			if (yych <= 'r') goto yy164;
			if (yych <= 's') goto yy165;
			goto yy30;
		}
	}
yy95:
	yych = *++p;
	if (yych == 'T') goto yy83;
	if (yych == 't') goto yy83;
	goto yy30;
yy96:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'E') goto yy166;
		if (yych <= 'O') goto yy30;
		goto yy113;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy30;
			goto yy166;
		} else {
			if (yych == 'p') goto yy113;
			goto yy30;
		}
	}
yy97:
	yych = *++p;
	if (yych == 'Y') goto yy167;
	if (yych == 'y') goto yy167;
	goto yy30;
yy98:
	yych = *++p;
	if (yych <= 'S') {
		if (yych == 'B') goto yy38;
		if (yych <= 'R') goto yy30;
		goto yy38;
	} else {
		if (yych <= 'b') {
			if (yych <= 'a') goto yy30;
			goto yy38;
		} else {
			if (yych == 's') goto yy38;
			goto yy30;
		}
	}
yy99:
	yych = *++p;
	if (yych == 'M') goto yy58;
	if (yych == 'm') goto yy58;
	goto yy30;
yy100:
	yych = *++p;
	if (yych <= 'L') {
		if (yych == 'A') goto yy168;
		if (yych <= 'K') goto yy30;
		goto yy169;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy30;
			goto yy168;
		} else {
			if (yych == 'l') goto yy169;
			goto yy30;
		}
	}
yy101:
	yych = *++p;
	if (yych == 'O') goto yy170;
	if (yych == 'o') goto yy170;
	goto yy30;
yy102:
	yych = *++p;
	if (yych == 'H') goto yy38;
	if (yych == 'h') goto yy38;
	goto yy30;
yy103:
	yych = *++p;
	if (yych == 'E') goto yy171;
	if (yych == 'e') goto yy171;
	goto yy30;
yy104:
	yych = *++p;
	if (yych == 'G') goto yy38;
	if (yych == 'g') goto yy38;
	goto yy30;
yy105:
	yych = *++p;
	if (yych <= 'L') {
		if (yych == 'A') goto yy172;
		if (yych <= 'K') goto yy30;
		goto yy173;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy30;
			goto yy172;
		} else {
			if (yych == 'l') goto yy173;
			goto yy30;
		}
	}
yy106:
	yych = *++p;
	if (yych == 'I') goto yy174;
	if (yych == 'i') goto yy174;
	goto yy30;
yy107:
	yych = *++p;
	if (yych == '3') goto yy175;
	goto yy30;
yy108:
	yych = *++p;
	if (yych == 'R') goto yy176;
	if (yych == 'r') goto yy176;
	goto yy30;
yy109:
	yych = *++p;
	if (yych == '2') goto yy177;
	goto yy30;
yy110:
	yych = *++p;
	if (yych <= 'N') {
		if (yych <= 'L') goto yy30;
		if (yych <= 'M') goto yy178;
		goto yy179;
	} else {
		if (yych <= 'l') goto yy30;
		if (yych <= 'm') goto yy178;
		if (yych <= 'n') goto yy179;
		goto yy30;
	}
yy111:
	yych = *++p;
	if (yych == 'E') goto yy180;
	if (yych == 'e') goto yy180;
	goto yy30;
yy112:
	yych = *++p;
	if (yych == 'B') goto yy181;
	if (yych == 'b') goto yy181;
	goto yy30;
yy113:
	yych = *++p;
	if (yych <= 'R') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'S') goto yy38;
		if (yych == 's') goto yy38;
		goto yy30;
	}
yy114:
	yych = *++p;
	if (yych == 'A') goto yy51;
	if (yych == 'a') goto yy51;
	goto yy30;
yy115:
	yych = *++p;
	if (yych == 'C') goto yy182;
	if (yych == 'c') goto yy182;
	goto yy30;
yy116:
	yych = *++p;
	if (yych == 'O') goto yy183;
	if (yych == 'o') goto yy183;
	goto yy30;
yy117:
	yych = *++p;
	if (yych == 'I') goto yy184;
	if (yych == 'i') goto yy184;
	goto yy30;
yy118:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'L') goto yy185;
		if (yych <= 'O') goto yy30;
		goto yy58;
	} else {
		if (yych <= 'l') {
			if (yych <= 'k') goto yy30;
			goto yy185;
		} else {
			if (yych == 'p') goto yy58;
			goto yy30;
		}
	}
yy119:
	yych = *++p;
	if (yych == 'S') goto yy186;
	if (yych == 's') goto yy186;
	goto yy30;
yy120:
	yych = *++p;
	if (yych == '9') goto yy187;
	goto yy30;
yy121:
	yych = *++p;
	if (yych == 'U') goto yy36;
	if (yych == 'u') goto yy36;
	goto yy30;
yy122:
	yych = *++p;
	if (yych == 'U') goto yy188;
	if (yych == 'u') goto yy188;
	goto yy30;
yy123:
	yych = *++p;
	if (yych == 'A') goto yy189;
	if (yych == 'a') goto yy189;
	goto yy30;
yy124:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy124;
	if (yych <= '<') goto yy30;
	goto yy190;
yy125:
	yych = *++p;
	if (yych == 'H') goto yy191;
	if (yych == 'h') goto yy191;
	goto yy30;
yy126:
	yych = *++p;
	if (yych == 'C') goto yy192;
	if (yych == 'c') goto yy192;
	goto yy30;
yy127:
	yych = *++p;
	if (yych == 'L') goto yy193;
	if (yych == 'l') goto yy193;
	goto yy30;
yy128:
	yych = *++p;
	if (yych == 'O') goto yy194;
	if (yych == 'o') goto yy194;
	goto yy30;
yy129:
	yych = *++p;
	if (yych == '-') goto yy195;
	goto yy30;
yy130:
	yych = *++p;
	if (yych == 'T') goto yy196;
	if (yych == 't') goto yy196;
	goto yy30;
yy131:
	yych = *++p;
	if (yych == 'A') goto yy38;
	if (yych == 'a') goto yy38;
	goto yy30;
yy132:
	yych = *++p;
	if (yych == 'A') goto yy197;
	if (yych == 'a') goto yy197;
	goto yy30;
yy133:
	yych = *++p;
	if (yych == 'K') goto yy38;
	if (yych == 'k') goto yy38;
	goto yy30;
yy134:
	yych = *++p;
	if (yych == 'E') goto yy198;
	if (yych == 'e') goto yy198;
	goto yy30;
yy135:
	yych = *++p;
	if (yych == 'E') goto yy38;
	if (yych == 'e') goto yy38;
	goto yy30;
yy136:
	yych = *++p;
	if (yych == 'G') goto yy199;
	if (yych == 'g') goto yy199;
	goto yy30;
yy137:
	yych = *++p;
	if (yych == 'M') goto yy200;
	if (yych == 'm') goto yy200;
	goto yy30;
yy138:
	yych = *++p;
	if (yych == 'H') goto yy199;
	if (yych == 'h') goto yy199;
	goto yy30;
yy139:
	yych = *++p;
	if (yych == 'L') goto yy133;
	if (yych == 'l') goto yy133;
	goto yy30;
yy140:
	yych = *++p;
	if (yych == '3') goto yy38;
	goto yy30;
yy141:
	yych = *++p;
	if (yych == 'P') goto yy113;
	if (yych == 'p') goto yy113;
	goto yy30;
yy142:
	yych = *++p;
	if (yych <= ':') {
		if (yych == '6') goto yy38;
		if (yych <= '9') goto yy30;
		goto yy124;
	} else {
		if (yych <= 'S') {
			if (yych <= 'R') goto yy30;
			goto yy38;
		} else {
			if (yych == 's') goto yy38;
			goto yy30;
		}
	}
yy143:
	yych = *++p;
	if (yych == 'S') goto yy201;
	if (yych == 's') goto yy201;
	goto yy30;
yy144:
	yych = *++p;
	if (yych == 'A') goto yy202;
	if (yych == 'a') goto yy202;
	goto yy30;
yy145:
	yych = *++p;
	if (yych == 'P') goto yy203;
	if (yych == 'p') goto yy203;
	goto yy30;
yy146:
	yych = *++p;
	if (yych == 'T') goto yy204;
	if (yych == 't') goto yy204;
	goto yy30;
yy147:
	yych = *++p;
	if (yych == 'N') goto yy205;
	if (yych == 'n') goto yy205;
	goto yy30;
yy148:
	yych = *++p;
	if (yych == 'K') goto yy205;
	if (yych == 'k') goto yy205;
	goto yy30;
yy149:
	yych = *++p;
	if (yych == 'S') goto yy206;
	if (yych == 's') goto yy206;
	goto yy30;
yy150:
	yych = *++p;
	if (yych == 'H') goto yy207;
	if (yych == 'h') goto yy207;
	goto yy30;
yy151:
	yych = *++p;
	if (yych == 'I') goto yy35;
	if (yych == 'i') goto yy35;
	goto yy30;
yy152:
	yych = *++p;
	if (yych == 'B') goto yy208;
	if (yych == 'b') goto yy208;
	goto yy30;
yy153:
	yych = *++p;
	if (yych == 'D') goto yy209;
	if (yych == 'd') goto yy209;
	goto yy30;
yy154:
	yych = *++p;
	if (yych == 'E') goto yy47;
	if (yych == 'e') goto yy47;
	goto yy30;
yy155:
	yych = *++p;
	if (yych == 'Q') goto yy210;
	if (yych == 'q') goto yy210;
	goto yy30;
yy156:
	yych = *++p;
	if (yych == 'A') goto yy211;
	if (yych == 'a') goto yy211;
	goto yy30;
yy157:
	yych = *++p;
	if (yych == 'T') goto yy212;
	if (yych == 't') goto yy212;
	goto yy30;
yy158:
	yych = *++p;
	if (yych == 'X') goto yy213;
	if (yych == 'x') goto yy213;
	goto yy30;
yy159:
	yych = *++p;
	if (yych == 'C') goto yy38;
	if (yych == 'c') goto yy38;
	goto yy30;
yy160:
	yych = *++p;
	if (yych == 'R') goto yy213;
	if (yych == 'r') goto yy213;
	goto yy30;
yy161:
	yych = *++p;
	if (yych <= 'N') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'O') goto yy214;
		if (yych == 'o') goto yy214;
		goto yy30;
	}
yy162:
	yych = *++p;
	if (yych == 'N') goto yy159;
	if (yych == 'n') goto yy159;
	goto yy30;
yy163:
	yych = *++p;
	if (yych == 'O') goto yy215;
	if (yych == 'o') goto yy215;
	goto yy30;
yy164:
	yych = *++p;
	if (yych == 'V') goto yy216;
	if (yych == 'v') goto yy216;
	goto yy30;
yy165:
	yych = *++p;
	if (yych == 'S') goto yy217;
	if (yych == 's') goto yy217;
	goto yy30;
yy166:
	yych = *++p;
	if (yych == 'V') goto yy135;
	if (yych == 'v') goto yy135;
	goto yy30;
yy167:
	yych = *++p;
	if (yych == 'P') goto yy135;
	if (yych == 'p') goto yy135;
	goto yy30;
yy168:
	yych = *++p;
	if (yych == 'P') goto yy218;
	if (yych == 'p') goto yy218;
	goto yy30;
yy169:
	yych = *++p;
	if (yych == 'D') goto yy219;
	if (yych == 'd') goto yy219;
	goto yy30;
yy170:
	yych = *++p;
	if (yych == 'T') goto yy220;
	if (yych == 't') goto yy220;
	goto yy30;
yy171:
	yych = *++p;
	if (yych == 'A') goto yy35;
	if (yych == 'a') goto yy35;
	goto yy30;
yy172:
	yych = *++p;
	if (yych == 'M') goto yy221;
	if (yych == 'm') goto yy221;
	goto yy30;
yy173:
	yych = *++p;
	if (yych <= 'M') {
		if (yych == ':') goto yy124;
		goto yy30;
	} else {
		if (yych <= 'N') goto yy205;
		if (yych == 'n') goto yy205;
		goto yy30;
	}
yy174:
	yych = *++p;
	if (yych <= 'S') {
		if (yych == 'N') goto yy222;
		if (yych <= 'R') goto yy30;
		goto yy223;
	} else {
		if (yych <= 'n') {
			if (yych <= 'm') goto yy30;
			goto yy222;
		} else {
			if (yych == 's') goto yy223;
			goto yy30;
		}
	}
yy175:
	yych = *++p;
	if (yych == '2') goto yy224;
	goto yy30;
yy176:
	yych = *++p;
	if (yych == 'E') goto yy225;
	if (yych == 'e') goto yy225;
	goto yy30;
yy177:
	yych = *++p;
	if (yych == '0') goto yy226;
	goto yy30;
yy178:
	yych = *++p;
	if (yych == 'M') goto yy51;
	if (yych == 'm') goto yy51;
	goto yy30;
yy179:
	yych = *++p;
	if (yych == 'T') goto yy227;
	if (yych == 't') goto yy227;
	goto yy30;
yy180:
	yych = *++p;
	if (yych == 'W') goto yy228;
	if (yych == 'w') goto yy228;
	goto yy30;
yy181:
	yych = *++p;
	if (yych == 'C') goto yy225;
	if (yych == 'c') goto yy225;
	goto yy30;
yy182:
	yych = *++p;
	if (yych == 'I') goto yy229;
	if (yych == 'i') goto yy229;
	goto yy30;
yy183:
	yych = *++p;
	if (yych == 'N') goto yy230;
	if (yych == 'n') goto yy230;
	goto yy30;
yy184:
	yych = *++p;
	if (yych == 'R') goto yy135;
	if (yych == 'r') goto yy135;
	goto yy30;
yy185:
	yych = *++p;
	if (yych == 'R') goto yy231;
	if (yych == 'r') goto yy231;
	goto yy30;
yy186:
	yych = *++p;
	if (yych == 'G') goto yy232;
	if (yych == 'g') goto yy232;
	goto yy30;
yy187:
	yych = *++p;
	if (yych == '.') goto yy233;
	goto yy30;
yy188:
	yych = *++p;
	if (yych == 'M') goto yy234;
	if (yych == 'm') goto yy234;
	goto yy30;
yy189:
	yych = *++p;
	if (yych == 'C') goto yy235;
	if (yych == 'c') goto yy235;
	goto yy30;
yy190:
	++p;
	{ return (p - start); }
yy191:
	yych = *++p;
	if (yych == 'A') goto yy184;
	if (yych == 'a') goto yy184;
	goto yy30;
yy192:
	yych = *++p;
	if (yych == 'O') goto yy236;
	if (yych == 'o') goto yy236;
	goto yy30;
yy193:
	yych = *++p;
	if (yych == 'T') goto yy59;
	if (yych == 't') goto yy59;
	goto yy30;
yy194:
	yych = *++p;
	if (yych == 'M') goto yy237;
	if (yych == 'm') goto yy237;
	goto yy30;
yy195:
	yych = *++p;
	if (yych == 'E') goto yy238;
	if (yych == 'e') goto yy238;
	goto yy30;
yy196:
	yych = *++p;
	if (yych == 'E') goto yy239;
	if (yych == 'e') goto yy239;
	goto yy30;
yy197:
	yych = *++p;
	if (yych == '-') goto yy240;
	goto yy30;
yy198:
	yych = *++p;
	if (yych == 'T') goto yy241;
	if (yych == 't') goto yy241;
	goto yy30;
yy199:
	yych = *++p;
	if (yych == 'E') goto yy232;
	if (yych == 'e') goto yy232;
	goto yy30;
yy200:
	yych = *++p;
	if (yych == 'O') goto yy242;
	if (yych == 'o') goto yy242;
	goto yy30;
yy201:
	yych = *++p;
	if (yych == '.') goto yy243;
	if (yych == ':') goto yy124;
	goto yy30;
yy202:
	yych = *++p;
	if (yych == 'S') goto yy244;
	if (yych == 's') goto yy244;
	goto yy30;
yy203:
	yych = *++p;
	if (yych == 'A') goto yy245;
	if (yych == 'a') goto yy245;
	goto yy30;
yy204:
	yych = *++p;
	if (yych == 'F') goto yy35;
	if (yych == 'f') goto yy35;
	goto yy30;
yy205:
	yych = *++p;
	if (yych == 'E') goto yy36;
	if (yych == 'e') goto yy36;
	goto yy30;
yy206:
	yych = *++p;
	if (yych == 'A') goto yy246;
	if (yych == 'a') goto yy246;
	goto yy30;
yy207:
	yych = *++p;
	if (yych == 'E') goto yy247;
	if (yych == 'e') goto yy247;
	goto yy30;
yy208:
	yych = *++p;
	if (yych == 'L') goto yy135;
	if (yych == 'l') goto yy135;
	goto yy30;
yy209:
	yych = *++p;
	if (yych == 'A') goto yy248;
	if (yych == 'a') goto yy248;
	goto yy30;
yy210:
	yych = *++p;
	if (yych == 'U') goto yy249;
	if (yych == 'u') goto yy249;
	goto yy30;
yy211:
	yych = *++p;
	if (yych == 'R') goto yy250;
	if (yych == 'r') goto yy250;
	goto yy30;
yy212:
	yych = *++p;
	if (yych == 'F') goto yy251;
	if (yych == 'f') goto yy251;
	goto yy30;
yy213:
	yych = *++p;
	if (yych == 'Y') goto yy38;
	if (yych == 'y') goto yy38;
	goto yy30;
yy214:
	yych = *++p;
	if (yych == 'U') goto yy252;
	if (yych == 'u') goto yy252;
	goto yy30;
yy215:
	yych = *++p;
	if (yych == 'N') goto yy253;
	if (yych == 'n') goto yy253;
	goto yy30;
yy216:
	yych = *++p;
	if (yych == 'I') goto yy254;
	if (yych == 'i') goto yy254;
	goto yy30;
yy217:
	yych = *++p;
	if (yych == 'I') goto yy255;
	if (yych == 'i') goto yy255;
	goto yy30;
yy218:
	yych = *++p;
	if (yych == '.') goto yy256;
	goto yy30;
yy219:
	yych = *++p;
	if (yych == 'A') goto yy36;
	if (yych == 'a') goto yy36;
	goto yy30;
yy220:
	yych = *++p;
	if (yych == 'I') goto yy257;
	if (yych == 'i') goto yy257;
	goto yy30;
yy221:
	yych = *++p;
	if (yych == 'S') goto yy258;
	if (yych == 's') goto yy258;
	goto yy30;
yy222:
	yych = *++p;
	if (yych == 'G') goto yy47;
	if (yych == 'g') goto yy47;
	goto yy30;
yy223:
	yych = *++p;
	if (yych == 'M') goto yy259;
	if (yych == 'm') goto yy259;
	goto yy30;
yy224:
	yych = *++p;
	if (yych == '7') goto yy260;
	goto yy30;
yy225:
	yych = *++p;
	if (yych == 'A') goto yy261;
	if (yych == 'a') goto yy261;
	goto yy30;
yy226:
	yych = *++p;
	if (yych == '0') goto yy262;
	goto yy30;
yy227:
	yych = *++p;
	if (yych == 'R') goto yy263;
	if (yych == 'r') goto yy263;
	goto yy30;
yy228:
	yych = *++p;
	if (yych == '-') goto yy264;
	goto yy30;
yy229:
	yych = *++p;
	if (yych == 'W') goto yy265;
	if (yych == 'w') goto yy265;
	goto yy30;
yy230:
	yych = *++p;
	if (yych == '-') goto yy266;
	if (yych == ':') goto yy124;
	goto yy30;
yy231:
	yych = *++p;
	if (yych == 'P') goto yy267;
	if (yych == 'p') goto yy267;
	goto yy30;
yy232:
	yych = *++p;
	if (yych == 'R') goto yy38;
	if (yych == 'r') goto yy38;
	goto yy30;
yy233:
	yych = *++p;
	if (yych == '5') goto yy268;
	goto yy30;
yy234:
	yych = *++p;
	if (yych == 'X') goto yy269;
	if (yych == 'x') goto yy269;
	goto yy30;
yy235:
	yych = *++p;
	if (yych == 'H') goto yy270;
	if (yych == 'h') goto yy270;
	goto yy30;
yy236:
	yych = *++p;
	if (yych == 'I') goto yy52;
	if (yych == 'i') goto yy52;
	goto yy30;
yy237:
	yych = *++p;
	if (yych == 'E') goto yy271;
	if (yych == 'e') goto yy271;
	goto yy30;
yy238:
	yych = *++p;
	if (yych == 'V') goto yy272;
	if (yych == 'v') goto yy272;
	goto yy30;
yy239:
	yych = *++p;
	if (yych == 'N') goto yy36;
	if (yych == 'n') goto yy36;
	goto yy30;
yy240:
	yych = *++p;
	if (yych == 'P') goto yy273;
	if (yych == 'p') goto yy273;
	goto yy30;
yy241:
	yych = *++p;
	if (yych == 'I') goto yy274;
	if (yych == 'i') goto yy274;
	goto yy30;
yy242:
	yych = *++p;
	if (yych == 'P') goto yy275;
	if (yych == 'p') goto yy275;
	goto yy30;
yy243:
	yych = *++p;
	if (yych <= 'X') {
		if (yych <= 'K') {
			if (yych == 'B') goto yy276;
			goto yy30;
		} else {
			if (yych <= 'L') goto yy277;
			if (yych <= 'W') goto yy30;
			goto yy278;
		}
	} else {
		if (yych <= 'k') {
			if (yych == 'b') goto yy276;
			goto yy30;
		} else {
			if (yych <= 'l') goto yy277;
			if (yych == 'x') goto yy278;
			goto yy30;
		}
	}
yy244:
	yych = *++p;
	if (yych == 'C') goto yy279;
	if (yych == 'c') goto yy279;
	goto yy30;
yy245:
	yych = *++p;
	if (yych == 'R') goto yy159;
	if (yych == 'r') goto yy159;
	goto yy30;
yy246:
	yych = *++p;
	if (yych == 'G') goto yy135;
	if (yych == 'g') goto yy135;
	goto yy30;
yy247:
	yych = *++p;
	if (yych == 'L') goto yy58;
	if (yych == 'l') goto yy58;
	goto yy30;
yy248:
	yych = *++p;
	if (yych == 'T') goto yy135;
	if (yych == 't') goto yy135;
	goto yy30;
yy249:
	yych = *++p;
	if (yych == 'E') goto yy280;
	if (yych == 'e') goto yy280;
	goto yy30;
yy250:
	yych = *++p;
	if (yych == 'A') goto yy281;
	if (yych == 'a') goto yy281;
	goto yy30;
yy251:
	yych = *++p;
	if (yych == 'O') goto yy282;
	if (yych == 'o') goto yy282;
	goto yy30;
yy252:
	yych = *++p;
	if (yych == 'R') goto yy254;
	if (yych == 'r') goto yy254;
	goto yy30;
yy253:
	yych = *++p;
	if (yych == 'D') goto yy283;
	if (yych == 'd') goto yy283;
	goto yy30;
yy254:
	yych = *++p;
	if (yych == 'C') goto yy135;
	if (yych == 'c') goto yy135;
	goto yy30;
yy255:
	yych = *++p;
	if (yych == 'O') goto yy52;
	if (yych == 'o') goto yy52;
	goto yy30;
yy256:
	yych = *++p;
	if (yych == 'B') goto yy284;
	if (yych == 'b') goto yy284;
	goto yy30;
yy257:
	yych = *++p;
	if (yych == 'F') goto yy213;
	if (yych == 'f') goto yy213;
	goto yy30;
yy258:
	yych = *++p;
	if (yych == 'P') goto yy285;
	if (yych == 'p') goto yy285;
	goto yy30;
yy259:
	yych = *++p;
	if (yych == 'E') goto yy77;
	if (yych == 'e') goto yy77;
	goto yy30;
yy260:
	yych = *++p;
	if (yych == '0') goto yy38;
	goto yy30;
yy261:
	yych = *++p;
	if (yych == 'L') goto yy38;
	if (yych == 'l') goto yy38;
	goto yy30;
yy262:
	yych = *++p;
	if (yych == '4') goto yy38;
	goto yy30;
yy263:
	yych = *++p;
	if (yych == 'I') goto yy41;
	if (yych == 'i') goto yy41;
	goto yy30;
yy264:
	yych = *++p;
	if (yych == 'S') goto yy286;
	if (yych == 's') goto yy286;
	goto yy30;
yy265:
	yych = *++p;
	if (yych == 'Y') goto yy104;
	if (yych == 'y') goto yy104;
	goto yy30;
yy266:
	yych = *++p;
	if (yych == 'U') goto yy287;
	if (yych == 'u') goto yy287;
	goto yy30;
yy267:
	yych = *++p;
	if (yych == 'C') goto yy218;
	if (yych == 'c') goto yy218;
	goto yy30;
yy268:
	yych = *++p;
	if (yych == '0') goto yy288;
	goto yy30;
yy269:
	yych = *++p;
	if (yych == 'T') goto yy289;
	if (yych == 't') goto yy289;
	goto yy30;
yy270:
	yych = *++p;
	if (yych == 'M') goto yy196;
	if (yych == 'm') goto yy196;
	goto yy30;
yy271:
	yych = *++p;
	if (yych == '-') goto yy290;
	if (yych == ':') goto yy124;
	goto yy30;
yy272:
	yych = *++p;
	if (yych == 'E') goto yy291;
	if (yych == 'e') goto yy291;
	goto yy30;
yy273:
	yych = *++p;
	if (yych == 'L') goto yy292;
	if (yych == 'l') goto yy292;
	goto yy30;
yy274:
	yych = *++p;
	if (yych == 'M') goto yy135;
	if (yych == 'm') goto yy135;
	goto yy30;
yy275:
	yych = *++p;
	if (yych == 'R') goto yy293;
	if (yych == 'r') goto yy293;
	goto yy30;
yy276:
	yych = *++p;
	if (yych == 'E') goto yy294;
	if (yych == 'e') goto yy294;
	goto yy30;
yy277:
	yych = *++p;
	if (yych == 'W') goto yy295;
	if (yych == 'w') goto yy295;
	goto yy30;
yy278:
	yych = *++p;
	if (yych == 'P') goto yy296;
	if (yych == 'p') goto yy296;
	goto yy30;
yy279:
	yych = *++p;
	if (yych == 'R') goto yy297;
	if (yych == 'r') goto yy297;
	goto yy30;
yy280:
	yych = *++p;
	if (yych == 'L') goto yy298;
	if (yych == 'l') goto yy298;
	goto yy30;
yy281:
	yych = *++p;
	if (yych == 'Z') goto yy299;
	if (yych == 'z') goto yy299;
	goto yy30;
yy282:
	yych = *++p;
	if (yych == 'R') goto yy35;
	if (yych == 'r') goto yy35;
	goto yy30;
yy283:
	yych = *++p;
	if (yych == 'L') goto yy300;
	if (yych == 'l') goto yy300;
	goto yy30;
yy284:
	yych = *++p;
	if (yych == 'E') goto yy301;
	if (yych == 'e') goto yy301;
	goto yy30;
yy285:
	yych = *++p;
	if (yych == 'E') goto yy302;
	if (yych == 'e') goto yy302;
	goto yy30;
yy286:
	yych = *++p;
	if (yych == 'O') goto yy214;
	if (yych == 'o') goto yy214;
	goto yy30;
yy287:
	yych = *++p;
	if (yych == 'S') goto yy303;
	if (yych == 's') goto yy303;
	goto yy30;
yy288:
	yych = *++p;
	if (yych <= 'Q') goto yy30;
	if (yych <= 'S') goto yy38;
	if (yych <= 'q') goto yy30;
	if (yych <= 's') goto yy38;
	goto yy30;
yy289:
	yych = *++p;
	if (yych == 'R') goto yy131;
	if (yych == 'r') goto yy131;
	goto yy30;
yy290:
	yych = *++p;
	if (yych == 'E') goto yy304;
	if (yych == 'e') goto yy304;
	goto yy30;
yy291:
	yych = *++p;
	if (yych == 'N') goto yy305;
	if (yych == 'n') goto yy305;
	goto yy30;
yy292:
	yych = *++p;
	if (yych == 'A') goto yy306;
	if (yych == 'a') goto yy306;
	goto yy30;
yy293:
	yych = *++p;
	if (yych == 'O') goto yy307;
	if (yych == 'o') goto yy307;
	goto yy30;
yy294:
	yych = *++p;
	if (yych == 'E') goto yy58;
	if (yych == 'e') goto yy58;
	goto yy30;
yy295:
	yych = *++p;
	if (yych == 'Z') goto yy38;
	if (yych == 'z') goto yy38;
	goto yy30;
yy296:
	yych = *++p;
	if (yych == 'C') goto yy113;
	if (yych == 'c') goto yy113;
	goto yy30;
yy297:
	yych = *++p;
	if (yych == 'I') goto yy308;
	if (yych == 'i') goto yy308;
	goto yy30;
yy298:
	yych = *++p;
	if (yych == 'O') goto yy309;
	if (yych == 'o') goto yy309;
	goto yy30;
yy299:
	yych = *++p;
	if (yych == 'Z') goto yy51;
	if (yych == 'z') goto yy51;
	goto yy30;
yy300:
	yych = *++p;
	if (yych == 'I') goto yy310;
	if (yych == 'i') goto yy310;
	goto yy30;
yy301:
	yych = *++p;
	if (yych == 'E') goto yy141;
	if (yych == 'e') goto yy141;
	goto yy30;
yy302:
	yych = *++p;
	if (yych == 'A') goto yy133;
	if (yych == 'a') goto yy133;
	goto yy30;
yy303:
	yych = *++p;
	if (yych == 'E') goto yy311;
	if (yych == 'e') goto yy311;
	goto yy30;
yy304:
	yych = *++p;
	if (yych == 'X') goto yy312;
	if (yych == 'x') goto yy312;
	goto yy30;
yy305:
	yych = *++p;
	if (yych == 'T') goto yy313;
	if (yych == 't') goto yy313;
	goto yy30;
yy306:
	yych = *++p;
	if (yych == 'Y') goto yy314;
	if (yych == 'y') goto yy314;
	goto yy30;
yy307:
	yych = *++p;
	if (yych == 'J') goto yy315;
	if (yych == 'j') goto yy315;
	goto yy30;
yy308:
	yych = *++p;
	if (yych == 'P') goto yy36;
	if (yych == 'p') goto yy36;
	goto yy30;
yy309:
	yych = *++p;
	if (yych == 'C') goto yy316;
	if (yych == 'c') goto yy316;
	goto yy30;
yy310:
	yych = *++p;
	if (yych == 'F') goto yy135;
	if (yych == 'f') goto yy135;
	goto yy30;
yy311:
	yych = *++p;
	if (yych == 'R') goto yy46;
	if (yych == 'r') goto yy46;
	goto yy30;
yy312:
	yych = *++p;
	if (yych == 'T') goto yy317;
	if (yych == 't') goto yy317;
	goto yy30;
yy313:
	yych = *++p;
	if (yych == 'B') goto yy318;
	if (yych == 'b') goto yy318;
	goto yy30;
yy314:
	yych = *++p;
	if (yych <= 'S') {
		if (yych == 'C') goto yy319;
		if (yych <= 'R') goto yy30;
		goto yy320;
	} else {
		if (yych <= 'c') {
			if (yych <= 'b') goto yy30;
			goto yy319;
		} else {
			if (yych == 's') goto yy320;
			goto yy30;
		}
	}
yy315:
	yych = *++p;
	if (yych == 'E') goto yy49;
	if (yych == 'e') goto yy49;
	goto yy30;
yy316:
	yych = *++p;
	if (yych == 'K') goto yy321;
	if (yych == 'k') goto yy321;
	goto yy30;
yy317:
	yych = *++p;
	if (yych == 'E') goto yy322;
	if (yych == 'e') goto yy322;
	goto yy30;
yy318:
	yych = *++p;
	if (yych == 'R') goto yy323;
	if (yych == 'r') goto yy323;
	goto yy30;
yy319:
	yych = *++p;
	if (yych == 'O') goto yy324;
	if (yych == 'o') goto yy324;
	goto yy30;
yy320:
	yych = *++p;
	if (yych == 'I') goto yy325;
	if (yych == 'i') goto yy325;
	goto yy30;
yy321:
	yych = *++p;
	if (yych == 'T') goto yy326;
	if (yych == 't') goto yy326;
	goto yy30;
yy322:
	yych = *++p;
	if (yych == 'N') goto yy165;
	if (yych == 'n') goto yy165;
	goto yy30;
yy323:
	yych = *++p;
	if (yych == 'I') goto yy327;
	if (yych == 'i') goto yy327;
	goto yy30;
yy324:
	yych = *++p;
	if (yych == 'N') goto yy328;
	if (yych == 'n') goto yy328;
	goto yy30;
yy325:
	yych = *++p;
	if (yych == 'N') goto yy329;
	if (yych == 'n') goto yy329;
	goto yy30;
yy326:
	yych = *++p;
	if (yych == 'O') goto yy330;
	if (yych == 'o') goto yy330;
	goto yy30;
yy327:
	yych = *++p;
	if (yych == 'T') goto yy331;
	if (yych == 't') goto yy331;
	goto yy30;
yy328:
	yych = *++p;
	if (yych == 'T') goto yy332;
	if (yych == 't') goto yy332;
	goto yy30;
yy329:
	yych = *++p;
	if (yych == 'G') goto yy208;
	if (yych == 'g') goto yy208;
	goto yy30;
yy330:
	yych = *++p;
	if (yych == 'K') goto yy333;
	if (yych == 'k') goto yy333;
	goto yy30;
yy331:
	yych = *++p;
	if (yych == 'E') goto yy334;
	if (yych == 'e') goto yy334;
	goto yy30;
yy332:
	yych = *++p;
	if (yych == 'A') goto yy335;
	if (yych == 'a') goto yy335;
	goto yy30;
yy333:
	yych = *++p;
	if (yych == 'E') goto yy52;
	if (yych == 'e') goto yy52;
	goto yy30;
yy334:
	yych = *++p;
	if (yych == '-') goto yy336;
	goto yy30;
yy335:
	yych = *++p;
	if (yych == 'I') goto yy337;
	if (yych == 'i') goto yy337;
	goto yy30;
yy336:
	yych = *++p;
	if (yych == 'A') goto yy338;
	if (yych == 'a') goto yy338;
	goto yy30;
yy337:
	yych = *++p;
	if (yych == 'N') goto yy199;
	if (yych == 'n') goto yy199;
	goto yy30;
yy338:
	yych = *++p;
	if (yych == 'T') goto yy339;
	if (yych != 't') goto yy30;
yy339:
	yych = *++p;
	if (yych == 'T') goto yy340;
	if (yych != 't') goto yy30;
yy340:
	yych = *++p;
	if (yych == 'E') goto yy341;
	if (yych != 'e') goto yy30;
yy341:
	yych = *++p;
	if (yych == 'N') goto yy342;
	if (yych != 'n') goto yy30;
yy342:
	yych = *++p;
	if (yych == 'D') goto yy343;
	if (yych != 'd') goto yy30;
yy343:
	yych = *++p;
	if (yych == 'E') goto yy135;
	if (yych == 'e') goto yy135;
	goto yy30;
}

}

// Try to match email autolink after first <, returning num of chars matched.
int _scan_autolink_email(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0, 128,   0, 128, 128, 128, 128, 128,
		  0,   0, 128, 128,   0, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128,   0,   0,   0, 128,   0, 128,
		  0, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128,   0,   0,   0, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yych <= ',') {
		if (yych <= '!') {
			if (yych == '\n') goto yy345;
			if (yych <= ' ') goto yy346;
			goto yy347;
		} else {
			if (yych <= '\'') {
				if (yych <= '"') goto yy346;
				goto yy347;
			} else {
				if (yych <= ')') goto yy346;
				if (yych <= '+') goto yy347;
				goto yy346;
			}
		}
	} else {
		if (yych <= '?') {
			if (yych <= '<') {
				if (yych <= '9') goto yy347;
				goto yy346;
			} else {
				if (yych == '>') goto yy346;
				goto yy347;
			}
		} else {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy346;
				goto yy347;
			} else {
				if (yych <= ']') goto yy346;
				if (yych <= '~') goto yy347;
				goto yy346;
			}
		}
	}
yy345:
	{ return 0; }
yy346:
	++p;
	goto yy345;
yy347:
	yych = *(marker = ++p);
	if (yych <= ',') {
		if (yych <= '"') {
			if (yych == '!') goto yy349;
			goto yy345;
		} else {
			if (yych <= '\'') goto yy349;
			if (yych <= ')') goto yy345;
			if (yych <= '+') goto yy349;
			goto yy345;
		}
	} else {
		if (yych <= '>') {
			if (yych <= '9') goto yy349;
			if (yych == '=') goto yy349;
			goto yy345;
		} else {
			if (yych <= 'Z') goto yy349;
			if (yych <= ']') goto yy345;
			if (yych <= '~') goto yy349;
			goto yy345;
		}
	}
yy348:
	yych = *++p;
yy349:
	if (yybm[0+yych] & 128) goto yy348;
	if (yych <= '>') goto yy350;
	if (yych <= '@') goto yy351;
yy350:
	p = marker;
	goto yy345;
yy351:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= '/') goto yy350;
		if (yych >= ':') goto yy350;
	} else {
		if (yych <= 'Z') goto yy352;
		if (yych <= '`') goto yy350;
		if (yych >= '{') goto yy350;
	}
yy352:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy353;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy353;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy353;
			goto yy350;
		}
	}
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy355;
		if (yych <= '/') goto yy350;
		goto yy356;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy356;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy356;
			goto yy350;
		}
	}
yy353:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych <= '-') goto yy355;
			goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy356;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy356;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy356;
			goto yy350;
		}
	}
yy354:
	++p;
	{ return (p - start); }
yy355:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy357;
		if (yych <= '/') goto yy350;
		goto yy358;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy358;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy358;
			goto yy350;
		}
	}
yy356:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy358;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy358;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy358;
			goto yy350;
		}
	}
yy357:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy359;
		if (yych <= '/') goto yy350;
		goto yy360;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy360;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy360;
			goto yy350;
		}
	}
yy358:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy360;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy360;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy360;
			goto yy350;
		}
	}
yy359:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy361;
		if (yych <= '/') goto yy350;
		goto yy362;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy362;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy362;
			goto yy350;
		}
	}
yy360:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy362;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy362;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy362;
			goto yy350;
		}
	}
yy361:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy363;
		if (yych <= '/') goto yy350;
		goto yy364;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy364;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy364;
			goto yy350;
		}
	}
yy362:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy364;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy364;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy364;
			goto yy350;
		}
	}
yy363:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy365;
		if (yych <= '/') goto yy350;
		goto yy366;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy366;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy366;
			goto yy350;
		}
	}
yy364:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy366;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy366;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy366;
			goto yy350;
		}
	}
yy365:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy367;
		if (yych <= '/') goto yy350;
		goto yy368;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy368;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy368;
			goto yy350;
		}
	}
yy366:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy368;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy368;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy368;
			goto yy350;
		}
	}
yy367:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy369;
		if (yych <= '/') goto yy350;
		goto yy370;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy370;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy370;
			goto yy350;
		}
	}
yy368:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy370;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy370;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy370;
			goto yy350;
		}
	}
yy369:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy371;
		if (yych <= '/') goto yy350;
		goto yy372;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy372;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy372;
			goto yy350;
		}
	}
yy370:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy372;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy372;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy372;
			goto yy350;
		}
	}
yy371:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy373;
		if (yych <= '/') goto yy350;
		goto yy374;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy374;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy374;
			goto yy350;
		}
	}
yy372:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy374;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy374;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy374;
			goto yy350;
		}
	}
yy373:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy375;
		if (yych <= '/') goto yy350;
		goto yy376;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy376;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy376;
			goto yy350;
		}
	}
yy374:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy376;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy376;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy376;
			goto yy350;
		}
	}
yy375:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy377;
		if (yych <= '/') goto yy350;
		goto yy378;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy378;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy378;
			goto yy350;
		}
	}
yy376:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy378;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy378;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy378;
			goto yy350;
		}
	}
yy377:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy379;
		if (yych <= '/') goto yy350;
		goto yy380;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy380;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy380;
			goto yy350;
		}
	}
yy378:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy380;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy380;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy380;
			goto yy350;
		}
	}
yy379:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy381;
		if (yych <= '/') goto yy350;
		goto yy382;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy382;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy382;
			goto yy350;
		}
	}
yy380:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy382;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy382;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy382;
			goto yy350;
		}
	}
yy381:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy383;
		if (yych <= '/') goto yy350;
		goto yy384;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy384;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy384;
			goto yy350;
		}
	}
yy382:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy384;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy384;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy384;
			goto yy350;
		}
	}
yy383:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy385;
		if (yych <= '/') goto yy350;
		goto yy386;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy386;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy386;
			goto yy350;
		}
	}
yy384:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy386;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy386;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy386;
			goto yy350;
		}
	}
yy385:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy387;
		if (yych <= '/') goto yy350;
		goto yy388;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy388;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy388;
			goto yy350;
		}
	}
yy386:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy388;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy388;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy388;
			goto yy350;
		}
	}
yy387:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy389;
		if (yych <= '/') goto yy350;
		goto yy390;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy390;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy390;
			goto yy350;
		}
	}
yy388:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy390;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy390;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy390;
			goto yy350;
		}
	}
yy389:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy391;
		if (yych <= '/') goto yy350;
		goto yy392;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy392;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy392;
			goto yy350;
		}
	}
yy390:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy392;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy392;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy392;
			goto yy350;
		}
	}
yy391:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy393;
		if (yych <= '/') goto yy350;
		goto yy394;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy394;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy394;
			goto yy350;
		}
	}
yy392:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy394;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy394;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy394;
			goto yy350;
		}
	}
yy393:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy395;
		if (yych <= '/') goto yy350;
		goto yy396;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy396;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy396;
			goto yy350;
		}
	}
yy394:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy396;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy396;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy396;
			goto yy350;
		}
	}
yy395:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy397;
		if (yych <= '/') goto yy350;
		goto yy398;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy398;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy398;
			goto yy350;
		}
	}
yy396:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy398;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy398;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy398;
			goto yy350;
		}
	}
yy397:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy399;
		if (yych <= '/') goto yy350;
		goto yy400;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy400;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy400;
			goto yy350;
		}
	}
yy398:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy400;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy400;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy400;
			goto yy350;
		}
	}
yy399:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy401;
		if (yych <= '/') goto yy350;
		goto yy402;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy402;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy402;
			goto yy350;
		}
	}
yy400:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy402;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy402;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy402;
			goto yy350;
		}
	}
yy401:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy403;
		if (yych <= '/') goto yy350;
		goto yy404;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy404;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy404;
			goto yy350;
		}
	}
yy402:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy404;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy404;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy404;
			goto yy350;
		}
	}
yy403:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy405;
		if (yych <= '/') goto yy350;
		goto yy406;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy406;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy406;
			goto yy350;
		}
	}
yy404:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy406;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy406;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy406;
			goto yy350;
		}
	}
yy405:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy407;
		if (yych <= '/') goto yy350;
		goto yy408;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy408;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy408;
			goto yy350;
		}
	}
yy406:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy408;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy408;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy408;
			goto yy350;
		}
	}
yy407:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy409;
		if (yych <= '/') goto yy350;
		goto yy410;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy410;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy410;
			goto yy350;
		}
	}
yy408:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy410;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy410;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy410;
			goto yy350;
		}
	}
yy409:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy411;
		if (yych <= '/') goto yy350;
		goto yy412;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy412;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy412;
			goto yy350;
		}
	}
yy410:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy412;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy412;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy412;
			goto yy350;
		}
	}
yy411:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy413;
		if (yych <= '/') goto yy350;
		goto yy414;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy414;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy414;
			goto yy350;
		}
	}
yy412:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy414;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy414;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy414;
			goto yy350;
		}
	}
yy413:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy415;
		if (yych <= '/') goto yy350;
		goto yy416;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy416;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy416;
			goto yy350;
		}
	}
yy414:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy416;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy416;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy416;
			goto yy350;
		}
	}
yy415:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy417;
		if (yych <= '/') goto yy350;
		goto yy418;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy418;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy418;
			goto yy350;
		}
	}
yy416:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy418;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy418;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy418;
			goto yy350;
		}
	}
yy417:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy419;
		if (yych <= '/') goto yy350;
		goto yy420;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy420;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy420;
			goto yy350;
		}
	}
yy418:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy420;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy420;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy420;
			goto yy350;
		}
	}
yy419:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy421;
		if (yych <= '/') goto yy350;
		goto yy422;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy422;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy422;
			goto yy350;
		}
	}
yy420:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy422;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy422;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy422;
			goto yy350;
		}
	}
yy421:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy423;
		if (yych <= '/') goto yy350;
		goto yy424;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy424;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy424;
			goto yy350;
		}
	}
yy422:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy424;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy424;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy424;
			goto yy350;
		}
	}
yy423:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy425;
		if (yych <= '/') goto yy350;
		goto yy426;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy426;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy426;
			goto yy350;
		}
	}
yy424:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy426;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy426;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy426;
			goto yy350;
		}
	}
yy425:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy427;
		if (yych <= '/') goto yy350;
		goto yy428;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy428;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy428;
			goto yy350;
		}
	}
yy426:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy428;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy428;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy428;
			goto yy350;
		}
	}
yy427:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy429;
		if (yych <= '/') goto yy350;
		goto yy430;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy430;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy430;
			goto yy350;
		}
	}
yy428:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy430;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy430;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy430;
			goto yy350;
		}
	}
yy429:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy431;
		if (yych <= '/') goto yy350;
		goto yy432;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy432;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy432;
			goto yy350;
		}
	}
yy430:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy432;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy432;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy432;
			goto yy350;
		}
	}
yy431:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy433;
		if (yych <= '/') goto yy350;
		goto yy434;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy434;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy434;
			goto yy350;
		}
	}
yy432:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy434;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy434;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy434;
			goto yy350;
		}
	}
yy433:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy435;
		if (yych <= '/') goto yy350;
		goto yy436;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy436;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy436;
			goto yy350;
		}
	}
yy434:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy436;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy436;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy436;
			goto yy350;
		}
	}
yy435:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy437;
		if (yych <= '/') goto yy350;
		goto yy438;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy438;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy438;
			goto yy350;
		}
	}
yy436:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy438;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy438;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy438;
			goto yy350;
		}
	}
yy437:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy439;
		if (yych <= '/') goto yy350;
		goto yy440;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy440;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy440;
			goto yy350;
		}
	}
yy438:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy440;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy440;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy440;
			goto yy350;
		}
	}
yy439:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy441;
		if (yych <= '/') goto yy350;
		goto yy442;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy442;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy442;
			goto yy350;
		}
	}
yy440:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy442;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy442;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy442;
			goto yy350;
		}
	}
yy441:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy443;
		if (yych <= '/') goto yy350;
		goto yy444;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy444;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy444;
			goto yy350;
		}
	}
yy442:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy444;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy444;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy444;
			goto yy350;
		}
	}
yy443:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy445;
		if (yych <= '/') goto yy350;
		goto yy446;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy446;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy446;
			goto yy350;
		}
	}
yy444:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy446;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy446;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy446;
			goto yy350;
		}
	}
yy445:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy447;
		if (yych <= '/') goto yy350;
		goto yy448;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy448;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy448;
			goto yy350;
		}
	}
yy446:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy448;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy448;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy448;
			goto yy350;
		}
	}
yy447:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy449;
		if (yych <= '/') goto yy350;
		goto yy450;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy450;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy450;
			goto yy350;
		}
	}
yy448:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy450;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy450;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy450;
			goto yy350;
		}
	}
yy449:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy451;
		if (yych <= '/') goto yy350;
		goto yy452;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy452;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy452;
			goto yy350;
		}
	}
yy450:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy452;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy452;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy452;
			goto yy350;
		}
	}
yy451:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy453;
		if (yych <= '/') goto yy350;
		goto yy454;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy454;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy454;
			goto yy350;
		}
	}
yy452:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy454;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy454;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy454;
			goto yy350;
		}
	}
yy453:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy455;
		if (yych <= '/') goto yy350;
		goto yy456;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy456;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy456;
			goto yy350;
		}
	}
yy454:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy456;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy456;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy456;
			goto yy350;
		}
	}
yy455:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy457;
		if (yych <= '/') goto yy350;
		goto yy458;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy458;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy458;
			goto yy350;
		}
	}
yy456:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy458;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy458;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy458;
			goto yy350;
		}
	}
yy457:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy459;
		if (yych <= '/') goto yy350;
		goto yy460;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy460;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy460;
			goto yy350;
		}
	}
yy458:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy460;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy460;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy460;
			goto yy350;
		}
	}
yy459:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy461;
		if (yych <= '/') goto yy350;
		goto yy462;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy462;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy462;
			goto yy350;
		}
	}
yy460:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy462;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy462;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy462;
			goto yy350;
		}
	}
yy461:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy463;
		if (yych <= '/') goto yy350;
		goto yy464;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy464;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy464;
			goto yy350;
		}
	}
yy462:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy464;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy464;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy464;
			goto yy350;
		}
	}
yy463:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy465;
		if (yych <= '/') goto yy350;
		goto yy466;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy466;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy466;
			goto yy350;
		}
	}
yy464:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy466;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy466;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy466;
			goto yy350;
		}
	}
yy465:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy467;
		if (yych <= '/') goto yy350;
		goto yy468;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy468;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy468;
			goto yy350;
		}
	}
yy466:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy468;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy468;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy468;
			goto yy350;
		}
	}
yy467:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy469;
		if (yych <= '/') goto yy350;
		goto yy470;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy470;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy470;
			goto yy350;
		}
	}
yy468:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy470;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy470;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy470;
			goto yy350;
		}
	}
yy469:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy471;
		if (yych <= '/') goto yy350;
		goto yy472;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy472;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy472;
			goto yy350;
		}
	}
yy470:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy472;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy472;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy472;
			goto yy350;
		}
	}
yy471:
	yych = *++p;
	if (yych <= '9') {
		if (yych == '-') goto yy473;
		if (yych <= '/') goto yy350;
		goto yy474;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy350;
			goto yy474;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy474;
			goto yy350;
		}
	}
yy472:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= ',') goto yy350;
			if (yych >= '.') goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych <= '9') goto yy474;
			goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
			goto yy474;
		} else {
			if (yych <= '`') goto yy350;
			if (yych <= 'z') goto yy474;
			goto yy350;
		}
	}
yy473:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= '/') goto yy350;
		if (yych <= '9') goto yy475;
		goto yy350;
	} else {
		if (yych <= 'Z') goto yy475;
		if (yych <= '`') goto yy350;
		if (yych <= 'z') goto yy475;
		goto yy350;
	}
yy474:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '.') {
			if (yych <= '-') goto yy350;
			goto yy351;
		} else {
			if (yych <= '/') goto yy350;
			if (yych >= ':') goto yy350;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '>') goto yy354;
			if (yych <= '@') goto yy350;
		} else {
			if (yych <= '`') goto yy350;
			if (yych >= '{') goto yy350;
		}
	}
yy475:
	yych = *++p;
	if (yych == '.') goto yy351;
	if (yych == '>') goto yy354;
	goto yy350;
}

}

// Try to match an HTML tag after first <, returning num of chars matched.
int _scan_html_tag(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[512] = {
		  0, 250, 250, 250, 250, 250, 250, 250,
		250, 235, 235, 235, 235, 235, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		235, 250, 202, 250, 250, 250, 250, 170,
		250, 250, 250, 250, 250, 246, 254, 250,
		254, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 250, 234, 234, 232, 250,
		250, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 250, 250, 122, 250, 254,
		234, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 254, 254, 254, 254, 254,
		254, 254, 254, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		250, 250, 250, 250, 250, 250, 250, 250,
		  0, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 128, 128, 128, 128, 128,   0,
		128, 224, 224, 224, 224, 224, 224, 224,
		224, 224, 224, 224, 224, 224, 224, 224,
		224, 224, 224, 224, 224, 224, 224, 224,
		224, 224, 224, 128, 128, 128, 128, 128,
		128, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128,
		128, 128, 128, 128, 128, 128, 128, 128
	};
	yych = *p;
	if (yych <= '/') {
		if (yych <= ' ') {
			if (yych != '\n') goto yy478;
		} else {
			if (yych <= '!') goto yy479;
			if (yych <= '.') goto yy478;
			goto yy480;
		}
	} else {
		if (yych <= '@') {
			if (yych == '?') goto yy481;
			goto yy478;
		} else {
			if (yych <= 'Z') goto yy482;
			if (yych <= '`') goto yy478;
			if (yych <= 'z') goto yy482;
			goto yy478;
		}
	}
yy477:
	{ return 0; }
yy478:
	++p;
	goto yy477;
yy479:
	yych = *(marker = ++p);
	if (yybm[256+yych] & 32) goto yy485;
	if (yych == '-') goto yy483;
	if (yych <= '@') goto yy477;
	if (yych <= '[') goto yy486;
	goto yy477;
yy480:
	yych = *(marker = ++p);
	if (yych <= '@') goto yy477;
	if (yych <= 'Z') goto yy487;
	if (yych <= '`') goto yy477;
	if (yych <= 'z') goto yy487;
	goto yy477;
yy481:
	yych = *(marker = ++p);
	if (yych <= 0x00) goto yy477;
	goto yy489;
yy482:
	yych = *(marker = ++p);
	if (yych <= '9') {
		if (yych <= 0x1F) {
			if (yych <= 0x08) goto yy477;
			if (yych <= '\r') goto yy493;
			goto yy477;
		} else {
			if (yych <= ' ') goto yy493;
			if (yych <= '.') goto yy477;
			goto yy493;
		}
	} else {
		if (yych <= '@') {
			if (yych == '>') goto yy493;
			goto yy477;
		} else {
			if (yych <= 'Z') goto yy493;
			if (yych <= '`') goto yy477;
			if (yych <= 'z') goto yy493;
			goto yy477;
		}
	}
yy483:
	yych = *++p;
	if (yych == '-') goto yy495;
yy484:
	p = marker;
	goto yy477;
yy485:
	yych = *++p;
	if (yybm[256+yych] & 32) goto yy485;
	if (yych <= 0x08) goto yy484;
	if (yych <= '\r') goto yy496;
	if (yych == ' ') goto yy496;
	goto yy484;
yy486:
	yych = *++p;
	if (yych == 'C') goto yy497;
	if (yych == 'c') goto yy497;
	goto yy484;
yy487:
	yych = *++p;
	if (yybm[256+yych] & 64) goto yy487;
	if (yych <= 0x1F) {
		if (yych <= 0x08) goto yy484;
		if (yych <= '\r') goto yy498;
		goto yy484;
	} else {
		if (yych <= ' ') goto yy498;
		if (yych == '>') goto yy494;
		goto yy484;
	}
yy488:
	yych = *++p;
yy489:
	if (yybm[256+yych] & 128) goto yy488;
	if (yych <= 0x00) goto yy484;
	yych = *++p;
	if (yych <= 0x00) goto yy484;
	if (yych == '>') goto yy494;
	goto yy488;
yy490:
	yych = *++p;
	if (yybm[0+yych] & 1) goto yy490;
	if (yych <= '>') {
		if (yych <= '9') {
			if (yych != '/') goto yy484;
		} else {
			if (yych <= ':') goto yy499;
			if (yych <= '=') goto yy484;
			goto yy494;
		}
	} else {
		if (yych <= '^') {
			if (yych <= '@') goto yy484;
			if (yych <= 'Z') goto yy499;
			goto yy484;
		} else {
			if (yych == '`') goto yy484;
			if (yych <= 'z') goto yy499;
			goto yy484;
		}
	}
yy491:
	yych = *++p;
	if (yych == '>') goto yy494;
	goto yy484;
yy492:
	yych = *++p;
yy493:
	if (yybm[0+yych] & 1) goto yy490;
	if (yych <= '>') {
		if (yych <= '/') {
			if (yych <= '.') goto yy484;
			goto yy491;
		} else {
			if (yych <= '9') goto yy492;
			if (yych <= '=') goto yy484;
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy484;
			goto yy492;
		} else {
			if (yych <= '`') goto yy484;
			if (yych <= 'z') goto yy492;
			goto yy484;
		}
	}
yy494:
	++p;
	{ return (p - start); }
yy495:
	yych = *++p;
	if (yych == '-') goto yy502;
	if (yych == '>') goto yy484;
	goto yy501;
yy496:
	yych = *++p;
	if (yybm[0+yych] & 2) goto yy496;
	if (yych <= 0x00) goto yy484;
	goto yy494;
yy497:
	yych = *++p;
	if (yych == 'D') goto yy503;
	if (yych == 'd') goto yy503;
	goto yy484;
yy498:
	yych = *++p;
	if (yych <= 0x1F) {
		if (yych <= 0x08) goto yy484;
		if (yych <= '\r') goto yy498;
		goto yy484;
	} else {
		if (yych <= ' ') goto yy498;
		if (yych == '>') goto yy494;
		goto yy484;
	}
yy499:
	yych = *++p;
	if (yybm[0+yych] & 4) goto yy499;
	if (yych <= ',') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy484;
			goto yy504;
		} else {
			if (yych == ' ') goto yy504;
			goto yy484;
		}
	} else {
		if (yych <= '<') {
			if (yych <= '/') goto yy491;
			goto yy484;
		} else {
			if (yych <= '=') goto yy505;
			if (yych <= '>') goto yy494;
			goto yy484;
		}
	}
yy500:
	yych = *++p;
yy501:
	if (yybm[0+yych] & 8) goto yy500;
	if (yych <= 0x00) goto yy484;
	goto yy506;
yy502:
	yych = *++p;
	if (yych == '-') goto yy491;
	if (yych == '>') goto yy484;
	goto yy501;
yy503:
	yych = *++p;
	if (yych == 'A') goto yy507;
	if (yych == 'a') goto yy507;
	goto yy484;
yy504:
	yych = *++p;
	if (yych <= '<') {
		if (yych <= ' ') {
			if (yych <= 0x08) goto yy484;
			if (yych <= '\r') goto yy504;
			if (yych <= 0x1F) goto yy484;
			goto yy504;
		} else {
			if (yych <= '/') {
				if (yych <= '.') goto yy484;
				goto yy491;
			} else {
				if (yych == ':') goto yy499;
				goto yy484;
			}
		}
	} else {
		if (yych <= 'Z') {
			if (yych <= '=') goto yy505;
			if (yych <= '>') goto yy494;
			if (yych <= '@') goto yy484;
			goto yy499;
		} else {
			if (yych <= '_') {
				if (yych <= '^') goto yy484;
				goto yy499;
			} else {
				if (yych <= '`') goto yy484;
				if (yych <= 'z') goto yy499;
				goto yy484;
			}
		}
	}
yy505:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy508;
	if (yych <= 0x00) goto yy484;
	if (yych <= ' ') goto yy509;
	if (yych <= '"') goto yy510;
	if (yych <= '\'') goto yy511;
	goto yy484;
yy506:
	yych = *++p;
	if (yybm[0+yych] & 8) goto yy500;
	if (yych <= 0x00) goto yy484;
	goto yy491;
yy507:
	yych = *++p;
	if (yych == 'T') goto yy512;
	if (yych == 't') goto yy512;
	goto yy484;
yy508:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy508;
	if (yych <= 0x00) goto yy484;
	if (yych <= ' ') goto yy513;
	if (yych == '>') goto yy494;
	goto yy484;
yy509:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy508;
	if (yych <= '"') {
		if (yych <= 0x00) goto yy484;
		if (yych <= ' ') goto yy514;
	} else {
		if (yych <= '\'') goto yy511;
		if (yych == '>') goto yy494;
		goto yy484;
	}
yy510:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy510;
	if (yych <= 0x00) goto yy484;
	goto yy515;
yy511:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy511;
	if (yych <= 0x00) goto yy484;
	goto yy515;
yy512:
	yych = *++p;
	if (yych == 'A') goto yy516;
	if (yych == 'a') goto yy516;
	goto yy484;
yy513:
	yych = *++p;
	if (yych <= '9') {
		if (yych <= ' ') {
			if (yych <= 0x08) {
				if (yych <= 0x00) goto yy484;
				goto yy508;
			} else {
				if (yych <= '\r') goto yy513;
				if (yych <= 0x1F) goto yy508;
				goto yy513;
			}
		} else {
			if (yych <= '"') {
				if (yych <= '!') goto yy508;
				goto yy484;
			} else {
				if (yych == '\'') goto yy484;
				goto yy508;
			}
		}
	} else {
		if (yych <= '@') {
			if (yych <= ';') {
				if (yych <= ':') goto yy517;
				goto yy508;
			} else {
				if (yych <= '=') goto yy484;
				if (yych <= '>') goto yy494;
				goto yy508;
			}
		} else {
			if (yych <= '_') {
				if (yych <= 'Z') goto yy517;
				if (yych <= '^') goto yy508;
				goto yy517;
			} else {
				if (yych <= '`') goto yy484;
				if (yych <= 'z') goto yy517;
				goto yy508;
			}
		}
	}
yy514:
	yych = *++p;
	if (yych <= '9') {
		if (yych <= ' ') {
			if (yych <= 0x08) {
				if (yych <= 0x00) goto yy484;
				goto yy508;
			} else {
				if (yych <= '\r') goto yy514;
				if (yych <= 0x1F) goto yy508;
				goto yy514;
			}
		} else {
			if (yych <= '"') {
				if (yych <= '!') goto yy508;
				goto yy510;
			} else {
				if (yych == '\'') goto yy511;
				goto yy508;
			}
		}
	} else {
		if (yych <= '@') {
			if (yych <= ';') {
				if (yych <= ':') goto yy517;
				goto yy508;
			} else {
				if (yych <= '=') goto yy484;
				if (yych <= '>') goto yy494;
				goto yy508;
			}
		} else {
			if (yych <= '_') {
				if (yych <= 'Z') goto yy517;
				if (yych <= '^') goto yy508;
				goto yy517;
			} else {
				if (yych <= '`') goto yy484;
				if (yych <= 'z') goto yy517;
				goto yy508;
			}
		}
	}
yy515:
	yych = *++p;
	if (yybm[0+yych] & 1) goto yy490;
	if (yych == '/') goto yy491;
	if (yych == '>') goto yy494;
	goto yy484;
yy516:
	yych = *++p;
	if (yych == '[') goto yy518;
	goto yy484;
yy517:
	yych = *++p;
	if (yych <= '/') {
		if (yych <= '!') {
			if (yych <= '\r') {
				if (yych <= 0x00) goto yy484;
				if (yych <= 0x08) goto yy508;
				goto yy519;
			} else {
				if (yych == ' ') goto yy519;
				goto yy508;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '"') goto yy484;
				if (yych <= '&') goto yy508;
				goto yy484;
			} else {
				if (yych <= ',') goto yy508;
				if (yych <= '.') goto yy517;
				goto yy508;
			}
		}
	} else {
		if (yych <= '@') {
			if (yych <= '<') {
				if (yych <= ':') goto yy517;
				if (yych <= ';') goto yy508;
				goto yy484;
			} else {
				if (yych <= '=') goto yy505;
				if (yych <= '>') goto yy494;
				goto yy508;
			}
		} else {
			if (yych <= '_') {
				if (yych <= 'Z') goto yy517;
				if (yych <= '^') goto yy508;
				goto yy517;
			} else {
				if (yych <= '`') goto yy484;
				if (yych <= 'z') goto yy517;
				goto yy508;
			}
		}
	}
yy518:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy518;
	if (yych <= 0x00) goto yy484;
	goto yy520;
yy519:
	yych = *++p;
	if (yych <= ':') {
		if (yych <= ' ') {
			if (yych <= 0x08) {
				if (yych <= 0x00) goto yy484;
				goto yy508;
			} else {
				if (yych <= '\r') goto yy519;
				if (yych <= 0x1F) goto yy508;
				goto yy519;
			}
		} else {
			if (yych <= '&') {
				if (yych == '"') goto yy484;
				goto yy508;
			} else {
				if (yych <= '\'') goto yy484;
				if (yych <= '9') goto yy508;
				goto yy517;
			}
		}
	} else {
		if (yych <= '@') {
			if (yych <= '<') {
				if (yych <= ';') goto yy508;
				goto yy484;
			} else {
				if (yych <= '=') goto yy505;
				if (yych <= '>') goto yy494;
				goto yy508;
			}
		} else {
			if (yych <= '_') {
				if (yych <= 'Z') goto yy517;
				if (yych <= '^') goto yy508;
				goto yy517;
			} else {
				if (yych <= '`') goto yy484;
				if (yych <= 'z') goto yy517;
				goto yy508;
			}
		}
	}
yy520:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy518;
	if (yych <= 0x00) goto yy484;
	yych = *++p;
	if (yych <= 0x00) goto yy484;
	if (yych == '>') goto yy494;
	goto yy518;
}

}

// Try to match an HTML block tag including first <,
// returning num of chars matched.
int _scan_html_block_tag(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	yych = *p;
	if (yych == '\n') goto yy522;
	if (yych == '<') goto yy524;
	goto yy523;
yy522:
	{ return 0; }
yy523:
	++p;
	goto yy522;
yy524:
	yych = *(marker = ++p);
	switch (yych) {
		case '!':
		case '?': goto yy525;
		case '/': goto yy526;
		case 'A':
		case 'a': goto yy528;
		case 'B':
		case 'b': goto yy529;
		case 'C':
		case 'c': goto yy530;
		case 'D':
		case 'd': goto yy531;
		case 'E':
		case 'e': goto yy532;
		case 'F':
		case 'f': goto yy533;
		case 'H':
		case 'h': goto yy534;
		case 'I':
		case 'i': goto yy535;
		case 'L':
		case 'l': goto yy536;
		case 'M':
		case 'm': goto yy537;
		case 'O':
		case 'o': goto yy538;
		case 'P':
		case 'p': goto yy539;
		case 'S':
		case 's': goto yy540;
		case 'T':
		case 't': goto yy541;
		case 'U':
		case 'u': goto yy542;
		case 'V':
		case 'v': goto yy543;
		default: goto yy522;
	}
yy525:
	++p;
	{ return (p - start); }
yy526:
	yych = *++p;
	switch (yych) {
		case 'A':
		case 'a': goto yy544;
		case 'B':
		case 'b': goto yy545;
		case 'C':
		case 'c': goto yy546;
		case 'D':
		case 'd': goto yy547;
		case 'E':
		case 'e': goto yy548;
		case 'F':
		case 'f': goto yy549;
		case 'H':
		case 'h': goto yy550;
		case 'I':
		case 'i': goto yy551;
		case 'L':
		case 'l': goto yy552;
		case 'M':
		case 'm': goto yy553;
		case 'O':
		case 'o': goto yy554;
		case 'P':
		case 'p': goto yy555;
		case 'S':
		case 's': goto yy556;
		case 'T':
		case 't': goto yy557;
		case 'U':
		case 'u': goto yy558;
		case 'V':
		case 'v': goto yy559;
		default: goto yy527;
	}
yy527:
	p = marker;
	goto yy522;
yy528:
	yych = *++p;
	if (yych <= 'S') {
		if (yych <= 'Q') goto yy527;
		if (yych <= 'R') goto yy560;
		goto yy561;
	} else {
		if (yych <= 'q') goto yy527;
		if (yych <= 'r') goto yy560;
		if (yych <= 's') goto yy561;
		goto yy527;
	}
yy529:
	yych = *++p;
	if (yych <= 'U') {
		if (yych <= 'N') {
			if (yych == 'L') goto yy562;
			goto yy527;
		} else {
			if (yych <= 'O') goto yy563;
			if (yych <= 'T') goto yy527;
			goto yy564;
		}
	} else {
		if (yych <= 'n') {
			if (yych == 'l') goto yy562;
			goto yy527;
		} else {
			if (yych <= 'o') goto yy563;
			if (yych == 'u') goto yy564;
			goto yy527;
		}
	}
yy530:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'A') goto yy565;
		if (yych <= 'N') goto yy527;
		goto yy566;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy527;
			goto yy565;
		} else {
			if (yych == 'o') goto yy566;
			goto yy527;
		}
	}
yy531:
	yych = *++p;
	if (yych <= 'T') {
		if (yych <= 'I') {
			if (yych == 'D') goto yy567;
			if (yych <= 'H') goto yy527;
			goto yy568;
		} else {
			if (yych == 'L') goto yy567;
			if (yych <= 'S') goto yy527;
			goto yy567;
		}
	} else {
		if (yych <= 'i') {
			if (yych == 'd') goto yy567;
			if (yych <= 'h') goto yy527;
			goto yy568;
		} else {
			if (yych <= 'l') {
				if (yych <= 'k') goto yy527;
				goto yy567;
			} else {
				if (yych == 't') goto yy567;
				goto yy527;
			}
		}
	}
yy532:
	yych = *++p;
	if (yych == 'M') goto yy569;
	if (yych == 'm') goto yy569;
	goto yy527;
yy533:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'I') goto yy570;
		if (yych <= 'N') goto yy527;
		goto yy571;
	} else {
		if (yych <= 'i') {
			if (yych <= 'h') goto yy527;
			goto yy570;
		} else {
			if (yych == 'o') goto yy571;
			goto yy527;
		}
	}
yy534:
	yych = *++p;
	if (yych <= 'Q') {
		if (yych <= 'D') {
			if (yych <= '0') goto yy527;
			if (yych <= '6') goto yy567;
			goto yy527;
		} else {
			if (yych <= 'E') goto yy572;
			if (yych == 'G') goto yy573;
			goto yy527;
		}
	} else {
		if (yych <= 'f') {
			if (yych <= 'R') goto yy567;
			if (yych == 'e') goto yy572;
			goto yy527;
		} else {
			if (yych <= 'g') goto yy573;
			if (yych == 'r') goto yy567;
			goto yy527;
		}
	}
yy535:
	yych = *++p;
	if (yych == 'F') goto yy574;
	if (yych == 'f') goto yy574;
	goto yy527;
yy536:
	yych = *++p;
	if (yych == 'I') goto yy567;
	if (yych == 'i') goto yy567;
	goto yy527;
yy537:
	yych = *++p;
	if (yych == 'A') goto yy575;
	if (yych == 'a') goto yy575;
	goto yy527;
yy538:
	yych = *++p;
	if (yych <= 'U') {
		if (yych <= 'K') {
			if (yych == 'B') goto yy576;
			goto yy527;
		} else {
			if (yych <= 'L') goto yy567;
			if (yych <= 'T') goto yy527;
			goto yy577;
		}
	} else {
		if (yych <= 'k') {
			if (yych == 'b') goto yy576;
			goto yy527;
		} else {
			if (yych <= 'l') goto yy567;
			if (yych == 'u') goto yy577;
			goto yy527;
		}
	}
yy539:
	yych = *++p;
	if (yych <= '/') {
		if (yych <= 0x1F) {
			if (yych <= 0x08) goto yy527;
			if (yych <= '\r') goto yy578;
			goto yy527;
		} else {
			if (yych <= ' ') goto yy578;
			if (yych <= '.') goto yy527;
			goto yy578;
		}
	} else {
		if (yych <= 'Q') {
			if (yych == '>') goto yy578;
			goto yy527;
		} else {
			if (yych <= 'R') goto yy579;
			if (yych == 'r') goto yy579;
			goto yy527;
		}
	}
yy540:
	yych = *++p;
	if (yych <= 'T') {
		if (yych <= 'D') {
			if (yych == 'C') goto yy580;
			goto yy527;
		} else {
			if (yych <= 'E') goto yy581;
			if (yych <= 'S') goto yy527;
			goto yy582;
		}
	} else {
		if (yych <= 'd') {
			if (yych == 'c') goto yy580;
			goto yy527;
		} else {
			if (yych <= 'e') goto yy581;
			if (yych == 't') goto yy582;
			goto yy527;
		}
	}
yy541:
	yych = *++p;
	switch (yych) {
		case 'A':
		case 'a': goto yy583;
		case 'B':
		case 'b': goto yy584;
		case 'D':
		case 'R':
		case 'd':
		case 'r': goto yy567;
		case 'E':
		case 'e': goto yy585;
		case 'F':
		case 'f': goto yy586;
		case 'H':
		case 'h': goto yy587;
		default: goto yy527;
	}
yy542:
	yych = *++p;
	if (yych == 'L') goto yy567;
	if (yych == 'l') goto yy567;
	goto yy527;
yy543:
	yych = *++p;
	if (yych == 'I') goto yy588;
	if (yych == 'i') goto yy588;
	goto yy527;
yy544:
	yych = *++p;
	if (yych <= 'S') {
		if (yych <= 'Q') goto yy527;
		if (yych <= 'R') goto yy589;
		goto yy590;
	} else {
		if (yych <= 'q') goto yy527;
		if (yych <= 'r') goto yy589;
		if (yych <= 's') goto yy590;
		goto yy527;
	}
yy545:
	yych = *++p;
	if (yych <= 'U') {
		if (yych <= 'N') {
			if (yych == 'L') goto yy591;
			goto yy527;
		} else {
			if (yych <= 'O') goto yy592;
			if (yych <= 'T') goto yy527;
			goto yy593;
		}
	} else {
		if (yych <= 'n') {
			if (yych == 'l') goto yy591;
			goto yy527;
		} else {
			if (yych <= 'o') goto yy592;
			if (yych == 'u') goto yy593;
			goto yy527;
		}
	}
yy546:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'A') goto yy594;
		if (yych <= 'N') goto yy527;
		goto yy595;
	} else {
		if (yych <= 'a') {
			if (yych <= '`') goto yy527;
			goto yy594;
		} else {
			if (yych == 'o') goto yy595;
			goto yy527;
		}
	}
yy547:
	yych = *++p;
	if (yych <= 'T') {
		if (yych <= 'I') {
			if (yych == 'D') goto yy596;
			if (yych <= 'H') goto yy527;
			goto yy597;
		} else {
			if (yych == 'L') goto yy596;
			if (yych <= 'S') goto yy527;
			goto yy596;
		}
	} else {
		if (yych <= 'i') {
			if (yych == 'd') goto yy596;
			if (yych <= 'h') goto yy527;
			goto yy597;
		} else {
			if (yych <= 'l') {
				if (yych <= 'k') goto yy527;
				goto yy596;
			} else {
				if (yych == 't') goto yy596;
				goto yy527;
			}
		}
	}
yy548:
	yych = *++p;
	if (yych == 'M') goto yy598;
	if (yych == 'm') goto yy598;
	goto yy527;
yy549:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'I') goto yy599;
		if (yych <= 'N') goto yy527;
		goto yy600;
	} else {
		if (yych <= 'i') {
			if (yych <= 'h') goto yy527;
			goto yy599;
		} else {
			if (yych == 'o') goto yy600;
			goto yy527;
		}
	}
yy550:
	yych = *++p;
	if (yych <= 'Q') {
		if (yych <= 'D') {
			if (yych <= '0') goto yy527;
			if (yych <= '6') goto yy596;
			goto yy527;
		} else {
			if (yych <= 'E') goto yy601;
			if (yych == 'G') goto yy602;
			goto yy527;
		}
	} else {
		if (yych <= 'f') {
			if (yych <= 'R') goto yy596;
			if (yych == 'e') goto yy601;
			goto yy527;
		} else {
			if (yych <= 'g') goto yy602;
			if (yych == 'r') goto yy596;
			goto yy527;
		}
	}
yy551:
	yych = *++p;
	if (yych == 'F') goto yy603;
	if (yych == 'f') goto yy603;
	goto yy527;
yy552:
	yych = *++p;
	if (yych == 'I') goto yy596;
	if (yych == 'i') goto yy596;
	goto yy527;
yy553:
	yych = *++p;
	if (yych == 'A') goto yy604;
	if (yych == 'a') goto yy604;
	goto yy527;
yy554:
	yych = *++p;
	if (yych <= 'U') {
		if (yych <= 'K') {
			if (yych == 'B') goto yy605;
			goto yy527;
		} else {
			if (yych <= 'L') goto yy596;
			if (yych <= 'T') goto yy527;
			goto yy606;
		}
	} else {
		if (yych <= 'k') {
			if (yych == 'b') goto yy605;
			goto yy527;
		} else {
			if (yych <= 'l') goto yy596;
			if (yych == 'u') goto yy606;
			goto yy527;
		}
	}
yy555:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy527;
			goto yy607;
		} else {
			if (yych == ' ') goto yy607;
			goto yy527;
		}
	} else {
		if (yych <= 'R') {
			if (yych <= '>') goto yy607;
			if (yych <= 'Q') goto yy527;
			goto yy608;
		} else {
			if (yych == 'r') goto yy608;
			goto yy527;
		}
	}
yy556:
	yych = *++p;
	if (yych <= 'T') {
		if (yych <= 'D') {
			if (yych == 'C') goto yy609;
			goto yy527;
		} else {
			if (yych <= 'E') goto yy610;
			if (yych <= 'S') goto yy527;
			goto yy611;
		}
	} else {
		if (yych <= 'd') {
			if (yych == 'c') goto yy609;
			goto yy527;
		} else {
			if (yych <= 'e') goto yy610;
			if (yych == 't') goto yy611;
			goto yy527;
		}
	}
yy557:
	yych = *++p;
	switch (yych) {
		case 'A':
		case 'a': goto yy612;
		case 'B':
		case 'b': goto yy613;
		case 'D':
		case 'R':
		case 'd':
		case 'r': goto yy596;
		case 'E':
		case 'e': goto yy614;
		case 'F':
		case 'f': goto yy615;
		case 'H':
		case 'h': goto yy616;
		default: goto yy527;
	}
yy558:
	yych = *++p;
	if (yych == 'L') goto yy596;
	if (yych == 'l') goto yy596;
	goto yy527;
yy559:
	yych = *++p;
	if (yych == 'I') goto yy617;
	if (yych == 'i') goto yy617;
	goto yy527;
yy560:
	yych = *++p;
	if (yych == 'T') goto yy618;
	if (yych == 't') goto yy618;
	goto yy527;
yy561:
	yych = *++p;
	if (yych == 'I') goto yy619;
	if (yych == 'i') goto yy619;
	goto yy527;
yy562:
	yych = *++p;
	if (yych == 'O') goto yy620;
	if (yych == 'o') goto yy620;
	goto yy527;
yy563:
	yych = *++p;
	if (yych == 'D') goto yy621;
	if (yych == 'd') goto yy621;
	goto yy527;
yy564:
	yych = *++p;
	if (yych == 'T') goto yy622;
	if (yych == 't') goto yy622;
	goto yy527;
yy565:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'N') goto yy623;
		if (yych <= 'O') goto yy527;
		goto yy624;
	} else {
		if (yych <= 'n') {
			if (yych <= 'm') goto yy527;
			goto yy623;
		} else {
			if (yych == 'p') goto yy624;
			goto yy527;
		}
	}
yy566:
	yych = *++p;
	if (yych == 'L') goto yy625;
	if (yych == 'l') goto yy625;
	goto yy527;
yy567:
	yych = *++p;
	if (yych <= ' ') {
		if (yych <= 0x08) goto yy527;
		if (yych <= '\r') goto yy578;
		if (yych <= 0x1F) goto yy527;
		goto yy578;
	} else {
		if (yych <= '/') {
			if (yych <= '.') goto yy527;
			goto yy578;
		} else {
			if (yych == '>') goto yy578;
			goto yy527;
		}
	}
yy568:
	yych = *++p;
	if (yych == 'V') goto yy567;
	if (yych == 'v') goto yy567;
	goto yy527;
yy569:
	yych = *++p;
	if (yych == 'B') goto yy626;
	if (yych == 'b') goto yy626;
	goto yy527;
yy570:
	yych = *++p;
	if (yych <= 'G') {
		if (yych == 'E') goto yy627;
		if (yych <= 'F') goto yy527;
		goto yy628;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy527;
			goto yy627;
		} else {
			if (yych == 'g') goto yy628;
			goto yy527;
		}
	}
yy571:
	yych = *++p;
	if (yych <= 'R') {
		if (yych == 'O') goto yy629;
		if (yych <= 'Q') goto yy527;
		goto yy630;
	} else {
		if (yych <= 'o') {
			if (yych <= 'n') goto yy527;
			goto yy629;
		} else {
			if (yych == 'r') goto yy630;
			goto yy527;
		}
	}
yy572:
	yych = *++p;
	if (yych == 'A') goto yy631;
	if (yych == 'a') goto yy631;
	goto yy527;
yy573:
	yych = *++p;
	if (yych == 'R') goto yy632;
	if (yych == 'r') goto yy632;
	goto yy527;
yy574:
	yych = *++p;
	if (yych == 'R') goto yy633;
	if (yych == 'r') goto yy633;
	goto yy527;
yy575:
	yych = *++p;
	if (yych == 'P') goto yy567;
	if (yych == 'p') goto yy567;
	goto yy527;
yy576:
	yych = *++p;
	if (yych == 'J') goto yy634;
	if (yych == 'j') goto yy634;
	goto yy527;
yy577:
	yych = *++p;
	if (yych == 'T') goto yy635;
	if (yych == 't') goto yy635;
	goto yy527;
yy578:
	++p;
	{ return (p - start); }
yy579:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'E') goto yy567;
		if (yych <= 'N') goto yy527;
		goto yy636;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy527;
			goto yy567;
		} else {
			if (yych == 'o') goto yy636;
			goto yy527;
		}
	}
yy580:
	yych = *++p;
	if (yych == 'R') goto yy637;
	if (yych == 'r') goto yy637;
	goto yy527;
yy581:
	yych = *++p;
	if (yych == 'C') goto yy624;
	if (yych == 'c') goto yy624;
	goto yy527;
yy582:
	yych = *++p;
	if (yych == 'Y') goto yy638;
	if (yych == 'y') goto yy638;
	goto yy527;
yy583:
	yych = *++p;
	if (yych == 'B') goto yy638;
	if (yych == 'b') goto yy638;
	goto yy527;
yy584:
	yych = *++p;
	if (yych == 'O') goto yy563;
	if (yych == 'o') goto yy563;
	goto yy527;
yy585:
	yych = *++p;
	if (yych == 'X') goto yy639;
	if (yych == 'x') goto yy639;
	goto yy527;
yy586:
	yych = *++p;
	if (yych == 'O') goto yy640;
	if (yych == 'o') goto yy640;
	goto yy527;
yy587:
	yych = *++p;
	if (yych <= '/') {
		if (yych <= 0x1F) {
			if (yych <= 0x08) goto yy527;
			if (yych <= '\r') goto yy578;
			goto yy527;
		} else {
			if (yych <= ' ') goto yy578;
			if (yych <= '.') goto yy527;
			goto yy578;
		}
	} else {
		if (yych <= 'D') {
			if (yych == '>') goto yy578;
			goto yy527;
		} else {
			if (yych <= 'E') goto yy641;
			if (yych == 'e') goto yy641;
			goto yy527;
		}
	}
yy588:
	yych = *++p;
	if (yych == 'D') goto yy642;
	if (yych == 'd') goto yy642;
	goto yy527;
yy589:
	yych = *++p;
	if (yych == 'T') goto yy643;
	if (yych == 't') goto yy643;
	goto yy527;
yy590:
	yych = *++p;
	if (yych == 'I') goto yy644;
	if (yych == 'i') goto yy644;
	goto yy527;
yy591:
	yych = *++p;
	if (yych == 'O') goto yy645;
	if (yych == 'o') goto yy645;
	goto yy527;
yy592:
	yych = *++p;
	if (yych == 'D') goto yy646;
	if (yych == 'd') goto yy646;
	goto yy527;
yy593:
	yych = *++p;
	if (yych == 'T') goto yy647;
	if (yych == 't') goto yy647;
	goto yy527;
yy594:
	yych = *++p;
	if (yych <= 'P') {
		if (yych == 'N') goto yy648;
		if (yych <= 'O') goto yy527;
		goto yy649;
	} else {
		if (yych <= 'n') {
			if (yych <= 'm') goto yy527;
			goto yy648;
		} else {
			if (yych == 'p') goto yy649;
			goto yy527;
		}
	}
yy595:
	yych = *++p;
	if (yych == 'L') goto yy650;
	if (yych == 'l') goto yy650;
	goto yy527;
yy596:
	yych = *++p;
	if (yych <= 0x1F) {
		if (yych <= 0x08) goto yy527;
		if (yych <= '\r') goto yy607;
		goto yy527;
	} else {
		if (yych <= ' ') goto yy607;
		if (yych == '>') goto yy607;
		goto yy527;
	}
yy597:
	yych = *++p;
	if (yych == 'V') goto yy596;
	if (yych == 'v') goto yy596;
	goto yy527;
yy598:
	yych = *++p;
	if (yych == 'B') goto yy651;
	if (yych == 'b') goto yy651;
	goto yy527;
yy599:
	yych = *++p;
	if (yych <= 'G') {
		if (yych == 'E') goto yy652;
		if (yych <= 'F') goto yy527;
		goto yy653;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy527;
			goto yy652;
		} else {
			if (yych == 'g') goto yy653;
			goto yy527;
		}
	}
yy600:
	yych = *++p;
	if (yych <= 'R') {
		if (yych == 'O') goto yy654;
		if (yych <= 'Q') goto yy527;
		goto yy655;
	} else {
		if (yych <= 'o') {
			if (yych <= 'n') goto yy527;
			goto yy654;
		} else {
			if (yych == 'r') goto yy655;
			goto yy527;
		}
	}
yy601:
	yych = *++p;
	if (yych == 'A') goto yy656;
	if (yych == 'a') goto yy656;
	goto yy527;
yy602:
	yych = *++p;
	if (yych == 'R') goto yy657;
	if (yych == 'r') goto yy657;
	goto yy527;
yy603:
	yych = *++p;
	if (yych == 'R') goto yy658;
	if (yych == 'r') goto yy658;
	goto yy527;
yy604:
	yych = *++p;
	if (yych == 'P') goto yy596;
	if (yych == 'p') goto yy596;
	goto yy527;
yy605:
	yych = *++p;
	if (yych == 'J') goto yy659;
	if (yych == 'j') goto yy659;
	goto yy527;
yy606:
	yych = *++p;
	if (yych == 'T') goto yy660;
	if (yych == 't') goto yy660;
	goto yy527;
yy607:
	++p;
	{ return (p - start); }
yy608:
	yych = *++p;
	if (yych <= 'O') {
		if (yych == 'E') goto yy596;
		if (yych <= 'N') goto yy527;
		goto yy661;
	} else {
		if (yych <= 'e') {
			if (yych <= 'd') goto yy527;
			goto yy596;
		} else {
			if (yych == 'o') goto yy661;
			goto yy527;
		}
	}
yy609:
	yych = *++p;
	if (yych == 'R') goto yy662;
	if (yych == 'r') goto yy662;
	goto yy527;
yy610:
	yych = *++p;
	if (yych == 'C') goto yy649;
	if (yych == 'c') goto yy649;
	goto yy527;
yy611:
	yych = *++p;
	if (yych == 'Y') goto yy663;
	if (yych == 'y') goto yy663;
	goto yy527;
yy612:
	yych = *++p;
	if (yych == 'B') goto yy663;
	if (yych == 'b') goto yy663;
	goto yy527;
yy613:
	yych = *++p;
	if (yych == 'O') goto yy592;
	if (yych == 'o') goto yy592;
	goto yy527;
yy614:
	yych = *++p;
	if (yych == 'X') goto yy664;
	if (yych == 'x') goto yy664;
	goto yy527;
yy615:
	yych = *++p;
	if (yych == 'O') goto yy665;
	if (yych == 'o') goto yy665;
	goto yy527;
yy616:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy527;
			goto yy607;
		} else {
			if (yych == ' ') goto yy607;
			goto yy527;
		}
	} else {
		if (yych <= 'E') {
			if (yych <= '>') goto yy607;
			if (yych <= 'D') goto yy527;
			goto yy666;
		} else {
			if (yych == 'e') goto yy666;
			goto yy527;
		}
	}
yy617:
	yych = *++p;
	if (yych == 'D') goto yy667;
	if (yych == 'd') goto yy667;
	goto yy527;
yy618:
	yych = *++p;
	if (yych == 'I') goto yy668;
	if (yych == 'i') goto yy668;
	goto yy527;
yy619:
	yych = *++p;
	if (yych == 'D') goto yy669;
	if (yych == 'd') goto yy669;
	goto yy527;
yy620:
	yych = *++p;
	if (yych == 'C') goto yy670;
	if (yych == 'c') goto yy670;
	goto yy527;
yy621:
	yych = *++p;
	if (yych == 'Y') goto yy567;
	if (yych == 'y') goto yy567;
	goto yy527;
yy622:
	yych = *++p;
	if (yych == 'T') goto yy671;
	if (yych == 't') goto yy671;
	goto yy527;
yy623:
	yych = *++p;
	if (yych == 'V') goto yy672;
	if (yych == 'v') goto yy672;
	goto yy527;
yy624:
	yych = *++p;
	if (yych == 'T') goto yy673;
	if (yych == 't') goto yy673;
	goto yy527;
yy625:
	yych = *++p;
	if (yych <= '/') {
		if (yych <= 0x1F) {
			if (yych <= 0x08) goto yy527;
			if (yych <= '\r') goto yy578;
			goto yy527;
		} else {
			if (yych <= ' ') goto yy578;
			if (yych <= '.') goto yy527;
			goto yy578;
		}
	} else {
		if (yych <= 'F') {
			if (yych == '>') goto yy578;
			goto yy527;
		} else {
			if (yych <= 'G') goto yy573;
			if (yych == 'g') goto yy573;
			goto yy527;
		}
	}
yy626:
	yych = *++p;
	if (yych == 'E') goto yy674;
	if (yych == 'e') goto yy674;
	goto yy527;
yy627:
	yych = *++p;
	if (yych == 'L') goto yy675;
	if (yych == 'l') goto yy675;
	goto yy527;
yy628:
	yych = *++p;
	if (yych <= 'U') {
		if (yych == 'C') goto yy676;
		if (yych <= 'T') goto yy527;
		goto yy677;
	} else {
		if (yych <= 'c') {
			if (yych <= 'b') goto yy527;
			goto yy676;
		} else {
			if (yych == 'u') goto yy677;
			goto yy527;
		}
	}
yy629:
	yych = *++p;
	if (yych == 'T') goto yy678;
	if (yych == 't') goto yy678;
	goto yy527;
yy630:
	yych = *++p;
	if (yych == 'M') goto yy567;
	if (yych == 'm') goto yy567;
	goto yy527;
yy631:
	yych = *++p;
	if (yych == 'D') goto yy678;
	if (yych == 'd') goto yy678;
	goto yy527;
yy632:
	yych = *++p;
	if (yych == 'O') goto yy679;
	if (yych == 'o') goto yy679;
	goto yy527;
yy633:
	yych = *++p;
	if (yych == 'A') goto yy680;
	if (yych == 'a') goto yy680;
	goto yy527;
yy634:
	yych = *++p;
	if (yych == 'E') goto yy681;
	if (yych == 'e') goto yy681;
	goto yy527;
yy635:
	yych = *++p;
	if (yych == 'P') goto yy682;
	if (yych == 'p') goto yy682;
	goto yy527;
yy636:
	yych = *++p;
	if (yych == 'G') goto yy683;
	if (yych == 'g') goto yy683;
	goto yy527;
yy637:
	yych = *++p;
	if (yych == 'I') goto yy684;
	if (yych == 'i') goto yy684;
	goto yy527;
yy638:
	yych = *++p;
	if (yych == 'L') goto yy669;
	if (yych == 'l') goto yy669;
	goto yy527;
yy639:
	yych = *++p;
	if (yych == 'T') goto yy685;
	if (yych == 't') goto yy685;
	goto yy527;
yy640:
	yych = *++p;
	if (yych == 'O') goto yy686;
	if (yych == 'o') goto yy686;
	goto yy527;
yy641:
	yych = *++p;
	if (yych == 'A') goto yy674;
	if (yych == 'a') goto yy674;
	goto yy527;
yy642:
	yych = *++p;
	if (yych == 'E') goto yy687;
	if (yych == 'e') goto yy687;
	goto yy527;
yy643:
	yych = *++p;
	if (yych == 'I') goto yy688;
	if (yych == 'i') goto yy688;
	goto yy527;
yy644:
	yych = *++p;
	if (yych == 'D') goto yy689;
	if (yych == 'd') goto yy689;
	goto yy527;
yy645:
	yych = *++p;
	if (yych == 'C') goto yy690;
	if (yych == 'c') goto yy690;
	goto yy527;
yy646:
	yych = *++p;
	if (yych == 'Y') goto yy596;
	if (yych == 'y') goto yy596;
	goto yy527;
yy647:
	yych = *++p;
	if (yych == 'T') goto yy691;
	if (yych == 't') goto yy691;
	goto yy527;
yy648:
	yych = *++p;
	if (yych == 'V') goto yy692;
	if (yych == 'v') goto yy692;
	goto yy527;
yy649:
	yych = *++p;
	if (yych == 'T') goto yy693;
	if (yych == 't') goto yy693;
	goto yy527;
yy650:
	yych = *++p;
	if (yych <= '=') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy527;
			goto yy607;
		} else {
			if (yych == ' ') goto yy607;
			goto yy527;
		}
	} else {
		if (yych <= 'G') {
			if (yych <= '>') goto yy607;
			if (yych <= 'F') goto yy527;
			goto yy602;
		} else {
			if (yych == 'g') goto yy602;
			goto yy527;
		}
	}
yy651:
	yych = *++p;
	if (yych == 'E') goto yy694;
	if (yych == 'e') goto yy694;
	goto yy527;
yy652:
	yych = *++p;
	if (yych == 'L') goto yy695;
	if (yych == 'l') goto yy695;
	goto yy527;
yy653:
	yych = *++p;
	if (yych <= 'U') {
		if (yych == 'C') goto yy696;
		if (yych <= 'T') goto yy527;
		goto yy697;
	} else {
		if (yych <= 'c') {
			if (yych <= 'b') goto yy527;
			goto yy696;
		} else {
			if (yych == 'u') goto yy697;
			goto yy527;
		}
	}
yy654:
	yych = *++p;
	if (yych == 'T') goto yy698;
	if (yych == 't') goto yy698;
	goto yy527;
yy655:
	yych = *++p;
	if (yych == 'M') goto yy596;
	if (yych == 'm') goto yy596;
	goto yy527;
yy656:
	yych = *++p;
	if (yych == 'D') goto yy698;
	if (yych == 'd') goto yy698;
	goto yy527;
yy657:
	yych = *++p;
	if (yych == 'O') goto yy699;
	if (yych == 'o') goto yy699;
	goto yy527;
yy658:
	yych = *++p;
	if (yych == 'A') goto yy700;
	if (yych == 'a') goto yy700;
	goto yy527;
yy659:
	yych = *++p;
	if (yych == 'E') goto yy701;
	if (yych == 'e') goto yy701;
	goto yy527;
yy660:
	yych = *++p;
	if (yych == 'P') goto yy702;
	if (yych == 'p') goto yy702;
	goto yy527;
yy661:
	yych = *++p;
	if (yych == 'G') goto yy703;
	if (yych == 'g') goto yy703;
	goto yy527;
yy662:
	yych = *++p;
	if (yych == 'I') goto yy704;
	if (yych == 'i') goto yy704;
	goto yy527;
yy663:
	yych = *++p;
	if (yych == 'L') goto yy689;
	if (yych == 'l') goto yy689;
	goto yy527;
yy664:
	yych = *++p;
	if (yych == 'T') goto yy705;
	if (yych == 't') goto yy705;
	goto yy527;
yy665:
	yych = *++p;
	if (yych == 'O') goto yy706;
	if (yych == 'o') goto yy706;
	goto yy527;
yy666:
	yych = *++p;
	if (yych == 'A') goto yy694;
	if (yych == 'a') goto yy694;
	goto yy527;
yy667:
	yych = *++p;
	if (yych == 'E') goto yy707;
	if (yych == 'e') goto yy707;
	goto yy527;
yy668:
	yych = *++p;
	if (yych == 'C') goto yy638;
	if (yych == 'c') goto yy638;
	goto yy527;
yy669:
	yych = *++p;
	if (yych == 'E') goto yy567;
	if (yych == 'e') goto yy567;
	goto yy527;
yy670:
	yych = *++p;
	if (yych == 'K') goto yy708;
	if (yych == 'k') goto yy708;
	goto yy527;
yy671:
	yych = *++p;
	if (yych == 'O') goto yy709;
	if (yych == 'o') goto yy709;
	goto yy527;
yy672:
	yych = *++p;
	if (yych == 'A') goto yy710;
	if (yych == 'a') goto yy710;
	goto yy527;
yy673:
	yych = *++p;
	if (yych == 'I') goto yy671;
	if (yych == 'i') goto yy671;
	goto yy527;
yy674:
	yych = *++p;
	if (yych == 'D') goto yy567;
	if (yych == 'd') goto yy567;
	goto yy527;
yy675:
	yych = *++p;
	if (yych == 'D') goto yy711;
	if (yych == 'd') goto yy711;
	goto yy527;
yy676:
	yych = *++p;
	if (yych == 'A') goto yy712;
	if (yych == 'a') goto yy712;
	goto yy527;
yy677:
	yych = *++p;
	if (yych == 'R') goto yy669;
	if (yych == 'r') goto yy669;
	goto yy527;
yy678:
	yych = *++p;
	if (yych == 'E') goto yy713;
	if (yych == 'e') goto yy713;
	goto yy527;
yy679:
	yych = *++p;
	if (yych == 'U') goto yy575;
	if (yych == 'u') goto yy575;
	goto yy527;
yy680:
	yych = *++p;
	if (yych == 'M') goto yy669;
	if (yych == 'm') goto yy669;
	goto yy527;
yy681:
	yych = *++p;
	if (yych == 'C') goto yy686;
	if (yych == 'c') goto yy686;
	goto yy527;
yy682:
	yych = *++p;
	if (yych == 'U') goto yy686;
	if (yych == 'u') goto yy686;
	goto yy527;
yy683:
	yych = *++p;
	if (yych == 'R') goto yy714;
	if (yych == 'r') goto yy714;
	goto yy527;
yy684:
	yych = *++p;
	if (yych == 'P') goto yy686;
	if (yych == 'p') goto yy686;
	goto yy527;
yy685:
	yych = *++p;
	if (yych == 'A') goto yy715;
	if (yych == 'a') goto yy715;
	goto yy527;
yy686:
	yych = *++p;
	if (yych == 'T') goto yy567;
	if (yych == 't') goto yy567;
	goto yy527;
yy687:
	yych = *++p;
	if (yych == 'O') goto yy567;
	if (yych == 'o') goto yy567;
	goto yy527;
yy688:
	yych = *++p;
	if (yych == 'C') goto yy663;
	if (yych == 'c') goto yy663;
	goto yy527;
yy689:
	yych = *++p;
	if (yych == 'E') goto yy596;
	if (yych == 'e') goto yy596;
	goto yy527;
yy690:
	yych = *++p;
	if (yych == 'K') goto yy716;
	if (yych == 'k') goto yy716;
	goto yy527;
yy691:
	yych = *++p;
	if (yych == 'O') goto yy717;
	if (yych == 'o') goto yy717;
	goto yy527;
yy692:
	yych = *++p;
	if (yych == 'A') goto yy718;
	if (yych == 'a') goto yy718;
	goto yy527;
yy693:
	yych = *++p;
	if (yych == 'I') goto yy691;
	if (yych == 'i') goto yy691;
	goto yy527;
yy694:
	yych = *++p;
	if (yych == 'D') goto yy596;
	if (yych == 'd') goto yy596;
	goto yy527;
yy695:
	yych = *++p;
	if (yych == 'D') goto yy719;
	if (yych == 'd') goto yy719;
	goto yy527;
yy696:
	yych = *++p;
	if (yych == 'A') goto yy720;
	if (yych == 'a') goto yy720;
	goto yy527;
yy697:
	yych = *++p;
	if (yych == 'R') goto yy689;
	if (yych == 'r') goto yy689;
	goto yy527;
yy698:
	yych = *++p;
	if (yych == 'E') goto yy721;
	if (yych == 'e') goto yy721;
	goto yy527;
yy699:
	yych = *++p;
	if (yych == 'U') goto yy604;
	if (yych == 'u') goto yy604;
	goto yy527;
yy700:
	yych = *++p;
	if (yych == 'M') goto yy689;
	if (yych == 'm') goto yy689;
	goto yy527;
yy701:
	yych = *++p;
	if (yych == 'C') goto yy706;
	if (yych == 'c') goto yy706;
	goto yy527;
yy702:
	yych = *++p;
	if (yych == 'U') goto yy706;
	if (yych == 'u') goto yy706;
	goto yy527;
yy703:
	yych = *++p;
	if (yych == 'R') goto yy722;
	if (yych == 'r') goto yy722;
	goto yy527;
yy704:
	yych = *++p;
	if (yych == 'P') goto yy706;
	if (yych == 'p') goto yy706;
	goto yy527;
yy705:
	yych = *++p;
	if (yych == 'A') goto yy723;
	if (yych == 'a') goto yy723;
	goto yy527;
yy706:
	yych = *++p;
	if (yych == 'T') goto yy596;
	if (yych == 't') goto yy596;
	goto yy527;
yy707:
	yych = *++p;
	if (yych == 'O') goto yy596;
	if (yych == 'o') goto yy596;
	goto yy527;
yy708:
	yych = *++p;
	if (yych == 'Q') goto yy724;
	if (yych == 'q') goto yy724;
	goto yy527;
yy709:
	yych = *++p;
	if (yych == 'N') goto yy567;
	if (yych == 'n') goto yy567;
	goto yy527;
yy710:
	yych = *++p;
	if (yych == 'S') goto yy567;
	if (yych == 's') goto yy567;
	goto yy527;
yy711:
	yych = *++p;
	if (yych == 'S') goto yy725;
	if (yych == 's') goto yy725;
	goto yy527;
yy712:
	yych = *++p;
	if (yych == 'P') goto yy624;
	if (yych == 'p') goto yy624;
	goto yy527;
yy713:
	yych = *++p;
	if (yych == 'R') goto yy567;
	if (yych == 'r') goto yy567;
	goto yy527;
yy714:
	yych = *++p;
	if (yych == 'E') goto yy726;
	if (yych == 'e') goto yy726;
	goto yy527;
yy715:
	yych = *++p;
	if (yych == 'R') goto yy727;
	if (yych == 'r') goto yy727;
	goto yy527;
yy716:
	yych = *++p;
	if (yych == 'Q') goto yy728;
	if (yych == 'q') goto yy728;
	goto yy527;
yy717:
	yych = *++p;
	if (yych == 'N') goto yy596;
	if (yych == 'n') goto yy596;
	goto yy527;
yy718:
	yych = *++p;
	if (yych == 'S') goto yy596;
	if (yych == 's') goto yy596;
	goto yy527;
yy719:
	yych = *++p;
	if (yych == 'S') goto yy729;
	if (yych == 's') goto yy729;
	goto yy527;
yy720:
	yych = *++p;
	if (yych == 'P') goto yy649;
	if (yych == 'p') goto yy649;
	goto yy527;
yy721:
	yych = *++p;
	if (yych == 'R') goto yy596;
	if (yych == 'r') goto yy596;
	goto yy527;
yy722:
	yych = *++p;
	if (yych == 'E') goto yy730;
	if (yych == 'e') goto yy730;
	goto yy527;
yy723:
	yych = *++p;
	if (yych == 'R') goto yy731;
	if (yych == 'r') goto yy731;
	goto yy527;
yy724:
	yych = *++p;
	if (yych == 'U') goto yy732;
	if (yych == 'u') goto yy732;
	goto yy527;
yy725:
	yych = *++p;
	if (yych == 'E') goto yy686;
	if (yych == 'e') goto yy686;
	goto yy527;
yy726:
	yych = *++p;
	if (yych == 'S') goto yy710;
	if (yych == 's') goto yy710;
	goto yy527;
yy727:
	yych = *++p;
	if (yych == 'E') goto yy733;
	if (yych == 'e') goto yy733;
	goto yy527;
yy728:
	yych = *++p;
	if (yych == 'U') goto yy734;
	if (yych == 'u') goto yy734;
	goto yy527;
yy729:
	yych = *++p;
	if (yych == 'E') goto yy706;
	if (yych == 'e') goto yy706;
	goto yy527;
yy730:
	yych = *++p;
	if (yych == 'S') goto yy718;
	if (yych == 's') goto yy718;
	goto yy527;
yy731:
	yych = *++p;
	if (yych == 'E') goto yy735;
	if (yych == 'e') goto yy735;
	goto yy527;
yy732:
	yych = *++p;
	if (yych == 'O') goto yy736;
	if (yych == 'o') goto yy736;
	goto yy527;
yy733:
	yych = *++p;
	if (yych == 'A') goto yy567;
	if (yych == 'a') goto yy567;
	goto yy527;
yy734:
	yych = *++p;
	if (yych == 'O') goto yy737;
	if (yych == 'o') goto yy737;
	goto yy527;
yy735:
	yych = *++p;
	if (yych == 'A') goto yy596;
	if (yych == 'a') goto yy596;
	goto yy527;
yy736:
	yych = *++p;
	if (yych == 'T') goto yy669;
	if (yych == 't') goto yy669;
	goto yy527;
yy737:
	yych = *++p;
	if (yych == 'T') goto yy689;
	if (yych == 't') goto yy689;
	goto yy527;
}

}

// Try to match a URL in a link or reference, return number of chars matched.
// This may optionally be contained in <..>; otherwise
// whitespace and unbalanced right parentheses aren't allowed.
// Newlines aren't ever allowed.
int _scan_link_url(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	unsigned int yyaccept = 0;
	static const unsigned char yybm[256] = {
		  0,  64,  64,  64,  64,  64,  64,  64,
		 64,  64,   8,  64,  64,  64,  64,  64,
		 64,  64,  64,  64,  64,  64,  64,  64,
		 64,  64,  64,  64,  64,  64,  64,  64,
		 72, 112, 112, 112, 112, 112, 112, 112,
		 64,  64, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112,  16, 112,  16, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 128, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112,
		112, 112, 112, 112, 112, 112, 112, 112
	};
	yych = *p;
	if (yybm[0+yych] & 8) goto yy741;
	if (yych <= ')') {
		if (yych <= 0x1F) goto yy739;
		if (yych <= '\'') goto yy743;
		if (yych <= '(') goto yy745;
	} else {
		if (yych <= '<') {
			if (yych <= ';') goto yy743;
			goto yy746;
		} else {
			if (yych == '\\') goto yy747;
			goto yy743;
		}
	}
yy739:
	++p;
yy740:
	{ return 0; }
yy741:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 8) goto yy741;
	if (yych <= ')') {
		if (yych <= 0x1F) goto yy742;
		if (yych <= '\'') goto yy743;
		if (yych <= '(') goto yy748;
	} else {
		if (yych <= '<') {
			if (yych <= ';') goto yy743;
			goto yy746;
		} else {
			if (yych == '\\') goto yy751;
			goto yy743;
		}
	}
yy742:
	{ return (p - start); }
yy743:
	yyaccept = 0;
	yych = *(marker = ++p);
yy744:
	if (yybm[0+yych] & 16) goto yy743;
	if (yych <= ' ') goto yy742;
	if (yych <= '(') goto yy748;
	if (yych <= ')') goto yy742;
	goto yy751;
yy745:
	yyaccept = 1;
	yych = *(marker = ++p);
	if (yych <= ' ') goto yy740;
	if (yych == '(') goto yy740;
	goto yy749;
yy746:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 32) goto yy746;
	if (yych <= ' ') {
		if (yych <= 0x00) goto yy742;
		if (yych == '\n') goto yy742;
		goto yy753;
	} else {
		if (yych <= ')') {
			if (yych <= '(') goto yy754;
			goto yy753;
		} else {
			if (yych <= '<') goto yy743;
			if (yych <= '>') goto yy755;
			goto yy757;
		}
	}
yy747:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= ' ') goto yy740;
		if (yych <= '/') goto yy743;
		if (yych <= '9') goto yy740;
		goto yy743;
	} else {
		if (yych <= '`') {
			if (yych <= 'Z') goto yy740;
			goto yy743;
		} else {
			if (yych <= 'z') goto yy740;
			if (yych <= '~') goto yy743;
			goto yy740;
		}
	}
yy748:
	yych = *++p;
yy749:
	if (yych <= '(') {
		if (yych <= ' ') goto yy750;
		if (yych <= '\'') goto yy748;
	} else {
		if (yych <= ')') goto yy743;
		if (yych == '\\') goto yy752;
		goto yy748;
	}
yy750:
	p = marker;
	if (yyaccept <= 1) {
		if (yyaccept == 0) goto yy742;
		else goto yy740;
	} else {
		goto yy756;
	}
yy751:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= ' ') goto yy750;
		if (yych <= '/') goto yy743;
		if (yych <= '9') goto yy750;
		goto yy743;
	} else {
		if (yych <= '`') {
			if (yych <= 'Z') goto yy750;
			goto yy743;
		} else {
			if (yych <= 'z') goto yy750;
			if (yych <= '~') goto yy743;
			goto yy750;
		}
	}
yy752:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= ' ') goto yy750;
		if (yych <= '/') goto yy748;
		if (yych <= '9') goto yy750;
		goto yy748;
	} else {
		if (yych <= '`') {
			if (yych <= 'Z') goto yy750;
			goto yy748;
		} else {
			if (yych <= 'z') goto yy750;
			if (yych <= '~') goto yy748;
			goto yy750;
		}
	}
yy753:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy753;
	if (yych <= '<') goto yy750;
	if (yych <= '>') goto yy758;
	goto yy759;
yy754:
	yych = *++p;
	if (yych <= ')') {
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy750;
			if (yych <= '\t') goto yy753;
			goto yy750;
		} else {
			if (yych <= ' ') goto yy753;
			if (yych <= '\'') goto yy754;
			if (yych <= '(') goto yy753;
			goto yy746;
		}
	} else {
		if (yych <= '=') {
			if (yych == '<') goto yy748;
			goto yy754;
		} else {
			if (yych <= '>') goto yy760;
			if (yych == '\\') goto yy761;
			goto yy754;
		}
	}
yy755:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yych <= ' ') goto yy756;
	if (yych != ')') goto yy744;
yy756:
	{ return (p - start); }
yy757:
	yych = *++p;
	if (yych <= '>') {
		if (yych <= ' ') {
			if (yych <= 0x00) goto yy750;
			if (yych == '\n') goto yy750;
			goto yy753;
		} else {
			if (yych <= '/') goto yy746;
			if (yych <= '9') goto yy753;
			if (yych <= '=') goto yy746;
			goto yy762;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '@') goto yy746;
			if (yych <= 'Z') goto yy753;
			if (yych <= '[') goto yy746;
			goto yy763;
		} else {
			if (yych <= '`') goto yy746;
			if (yych <= 'z') goto yy753;
			if (yych <= '~') goto yy746;
			goto yy753;
		}
	}
yy758:
	++p;
	goto yy756;
yy759:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy759;
	if (yych <= '\n') {
		if (yych <= 0x00) goto yy750;
		if (yych <= '\t') goto yy753;
		goto yy750;
	} else {
		if (yych == '>') goto yy764;
		goto yy753;
	}
yy760:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yych <= ' ') goto yy756;
	if (yych == '(') goto yy756;
	goto yy749;
yy761:
	yych = *++p;
	if (yych <= '>') {
		if (yych <= ' ') {
			if (yych <= 0x00) goto yy750;
			if (yych == '\n') goto yy750;
			goto yy753;
		} else {
			if (yych <= '/') goto yy754;
			if (yych <= '9') goto yy753;
			if (yych <= '=') goto yy754;
			goto yy765;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '@') goto yy754;
			if (yych <= 'Z') goto yy753;
			if (yych <= '[') goto yy754;
			goto yy766;
		} else {
			if (yych <= '`') goto yy754;
			if (yych <= 'z') goto yy753;
			if (yych <= '~') goto yy754;
			goto yy753;
		}
	}
yy762:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 32) goto yy746;
	if (yych <= ' ') {
		if (yych <= 0x00) goto yy756;
		if (yych == '\n') goto yy756;
		goto yy753;
	} else {
		if (yych <= ')') {
			if (yych <= '(') goto yy754;
			goto yy753;
		} else {
			if (yych <= '<') goto yy743;
			if (yych <= '>') goto yy755;
			goto yy757;
		}
	}
yy763:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yych <= '(') {
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy742;
			if (yych <= '\t') goto yy753;
			goto yy742;
		} else {
			if (yych <= ' ') goto yy753;
			if (yych <= '\'') goto yy746;
			goto yy754;
		}
	} else {
		if (yych <= '>') {
			if (yych <= ')') goto yy753;
			if (yych <= '=') goto yy746;
			goto yy762;
		} else {
			if (yych == '\\') goto yy757;
			goto yy746;
		}
	}
yy764:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 64) goto yy753;
	if (yych <= '<') goto yy756;
	if (yych <= '>') goto yy758;
	goto yy759;
yy765:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yych <= ')') {
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy756;
			if (yych <= '\t') goto yy753;
			goto yy756;
		} else {
			if (yych <= ' ') goto yy753;
			if (yych <= '\'') goto yy754;
			if (yych <= '(') goto yy753;
			goto yy746;
		}
	} else {
		if (yych <= '=') {
			if (yych == '<') goto yy748;
			goto yy754;
		} else {
			if (yych <= '>') goto yy760;
			if (yych == '\\') goto yy761;
			goto yy754;
		}
	}
yy766:
	yych = *++p;
	if (yych <= '(') {
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy750;
			if (yych <= '\t') goto yy753;
			goto yy750;
		} else {
			if (yych <= ' ') goto yy753;
			if (yych <= '\'') goto yy754;
			goto yy753;
		}
	} else {
		if (yych <= '>') {
			if (yych <= ')') goto yy746;
			if (yych <= '=') goto yy754;
			goto yy765;
		} else {
			if (yych == '\\') goto yy761;
			goto yy754;
		}
	}
}

}

// Try to match a link title (in single quotes, in double quotes, or
// in parentheses), returning number of chars matched.  Allow one
// level of internal nesting (quotes within quotes).
int _scan_link_title(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	unsigned int yyaccept = 0;
	static const unsigned char yybm[256] = {
		  0, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 192, 208, 208, 208, 208, 144,
		208,  80, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208,  32, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208,
		208, 208, 208, 208, 208, 208, 208, 208
	};
	yych = *p;
	if (yych <= '"') {
		if (yych == '\n') goto yy768;
		if (yych <= '!') goto yy769;
		goto yy770;
	} else {
		if (yych <= '&') goto yy769;
		if (yych <= '\'') goto yy771;
		if (yych <= '(') goto yy772;
		goto yy769;
	}
yy768:
	{ return 0; }
yy769:
	++p;
	goto yy768;
yy770:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yych <= 0x00) goto yy768;
	goto yy774;
yy771:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yych <= 0x00) goto yy768;
	goto yy780;
yy772:
	yyaccept = 0;
	yych = *(marker = ++p);
	if (yych <= 0x00) goto yy768;
	goto yy785;
yy773:
	yych = *++p;
yy774:
	if (yybm[0+yych] & 16) goto yy773;
	if (yych <= 0x00) goto yy775;
	if (yych <= '"') goto yy776;
	goto yy778;
yy775:
	p = marker;
	if (yyaccept <= 1) {
		if (yyaccept == 0) goto yy768;
		else goto yy777;
	} else {
		if (yyaccept == 2) goto yy782;
		else goto yy787;
	}
yy776:
	++p;
yy777:
	{ return (p - start); }
yy778:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy773;
	if (yych <= 0x00) goto yy775;
	if (yych <= '"') goto yy789;
	goto yy778;
yy779:
	yych = *++p;
yy780:
	if (yybm[0+yych] & 64) goto yy779;
	if (yych <= 0x00) goto yy775;
	if (yych >= '(') goto yy783;
yy781:
	++p;
yy782:
	{ return (p - start); }
yy783:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy779;
	if (yych <= 0x00) goto yy775;
	if (yych <= '\'') goto yy790;
	goto yy783;
yy784:
	yych = *++p;
yy785:
	if (yybm[0+yych] & 128) goto yy784;
	if (yych <= 0x00) goto yy775;
	if (yych >= '*') goto yy788;
yy786:
	++p;
yy787:
	{ return (p - start); }
yy788:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy784;
	if (yych <= 0x00) goto yy775;
	if (yych <= ')') goto yy791;
	goto yy788;
yy789:
	yyaccept = 1;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 16) goto yy773;
	if (yych <= 0x00) goto yy777;
	if (yych <= '"') goto yy776;
	goto yy778;
yy790:
	yyaccept = 2;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 64) goto yy779;
	if (yych <= 0x00) goto yy782;
	if (yych <= '\'') goto yy781;
	goto yy783;
yy791:
	yyaccept = 3;
	yych = *(marker = ++p);
	if (yybm[0+yych] & 128) goto yy784;
	if (yych <= 0x00) goto yy787;
	if (yych <= ')') goto yy786;
	goto yy788;
}

}

// Match space characters, including newlines.
int _scan_spacechars(const unsigned char *p)
{
  const unsigned char *start = p; \

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0, 128, 128, 128, 128, 128,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		128,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yybm[0+yych] & 128) goto yy793;
	++p;
	{ return 0; }
yy793:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy793;
	{ return (p - start); }
}

}

// Match ATX header start.
int _scan_atx_header_start(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		128,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yych == '\n') goto yy795;
	if (yych == '#') goto yy797;
	goto yy796;
yy795:
	{ return 0; }
yy796:
	++p;
	goto yy795;
yy797:
	yych = *(marker = ++p);
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	if (yych == '#') goto yy801;
	goto yy795;
yy798:
	++p;
yy799:
	{ return (p - start); }
yy800:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	goto yy799;
yy801:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	if (yych == '#') goto yy803;
yy802:
	p = marker;
	goto yy795;
yy803:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	if (yych != '#') goto yy802;
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	if (yych != '#') goto yy802;
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	if (yych != '#') goto yy802;
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy800;
	if (yych == '\n') goto yy798;
	goto yy802;
}

}

// Match sexext header line.  Return 1 for level-1 header,
// 2 for level-2, 0 for no match.
int _scan_setext_header_line(const unsigned char *p)
{
  const unsigned char *marker = NULL;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		 32,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,  64,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0, 128,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yych <= ',') {
		if (yych != '\n') goto yy806;
	} else {
		if (yych <= '-') goto yy807;
		if (yych == '=') goto yy808;
		goto yy806;
	}
yy805:
	{ return 0; }
yy806:
	++p;
	goto yy805;
yy807:
	yych = *(marker = ++p);
	if (yybm[0+yych] & 32) goto yy810;
	if (yych == '\n') goto yy809;
	if (yych == '-') goto yy812;
	goto yy805;
yy808:
	yych = *(marker = ++p);
	if (yybm[0+yych] & 128) goto yy815;
	if (yych == '\n') goto yy813;
	if (yych == ' ') goto yy814;
	goto yy805;
yy809:
	++p;
	{ return 2; }
yy810:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy810;
	if (yych == '\n') goto yy809;
yy811:
	p = marker;
	goto yy805;
yy812:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy810;
	if (yych == '\n') goto yy809;
	if (yych == '-') goto yy812;
	goto yy811;
yy813:
	++p;
	{ return 1; }
yy814:
	yych = *++p;
	if (yych == '\n') goto yy813;
	if (yych == ' ') goto yy814;
	goto yy811;
yy815:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy815;
	if (yych == '\n') goto yy813;
	if (yych == ' ') goto yy814;
	goto yy811;
}

}

// Scan a horizontal rule line: "...three or more hyphens, asterisks,
// or underscores on a line by themselves. If you wish, you may use
// spaces between the hyphens or asterisks."
int _scan_hrule(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0, 128,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		248,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,  16,   0,   0,  32,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,  64,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yych <= '*') {
		if (yych == '\n') goto yy817;
		if (yych <= ')') goto yy818;
		goto yy819;
	} else {
		if (yych <= '-') {
			if (yych <= ',') goto yy818;
			goto yy820;
		} else {
			if (yych == '_') goto yy821;
			goto yy818;
		}
	}
yy817:
	{ return 0; }
yy818:
	++p;
	goto yy817;
yy819:
	yych = *(marker = ++p);
	if (yybm[0+yych] & 8) goto yy822;
	if (yych == '*') goto yy824;
	goto yy817;
yy820:
	yych = *(marker = ++p);
	if (yych == ' ') goto yy825;
	if (yych == '-') goto yy826;
	goto yy817;
yy821:
	yych = *(marker = ++p);
	if (yych == ' ') goto yy827;
	if (yych == '_') goto yy828;
	goto yy817;
yy822:
	yych = *++p;
	if (yybm[0+yych] & 8) goto yy822;
	if (yych == '*') goto yy824;
yy823:
	p = marker;
	goto yy817;
yy824:
	yych = *++p;
	if (yych == ' ') goto yy824;
	if (yych == '*') goto yy829;
	goto yy823;
yy825:
	yych = *++p;
	if (yych == ' ') goto yy825;
	if (yych != '-') goto yy823;
yy826:
	yych = *++p;
	if (yych == ' ') goto yy826;
	if (yych == '-') goto yy830;
	goto yy823;
yy827:
	yych = *++p;
	if (yych == ' ') goto yy827;
	if (yych != '_') goto yy823;
yy828:
	yych = *++p;
	if (yych == ' ') goto yy828;
	if (yych == '_') goto yy831;
	goto yy823;
yy829:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy829;
	if (yych <= 0x08) goto yy823;
	if (yych <= '\t') goto yy832;
	if (yych <= '\n') goto yy833;
	goto yy823;
yy830:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy830;
	if (yych <= 0x08) goto yy823;
	if (yych <= '\t') goto yy834;
	if (yych <= '\n') goto yy835;
	goto yy823;
yy831:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy831;
	if (yych <= 0x08) goto yy823;
	if (yych <= '\t') goto yy836;
	if (yych <= '\n') goto yy837;
	goto yy823;
yy832:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy832;
	if (yych <= 0x08) goto yy823;
	if (yych >= '\v') goto yy823;
yy833:
	++p;
	{ return (p - start); }
yy834:
	yych = *++p;
	if (yych <= '\n') {
		if (yych <= 0x08) goto yy823;
		if (yych <= '\t') goto yy834;
	} else {
		if (yych == ' ') goto yy834;
		goto yy823;
	}
yy835:
	++p;
	{ return (p - start); }
yy836:
	yych = *++p;
	if (yych <= '\n') {
		if (yych <= 0x08) goto yy823;
		if (yych <= '\t') goto yy836;
	} else {
		if (yych == ' ') goto yy836;
		goto yy823;
	}
yy837:
	++p;
	{ return (p - start); }
}

}

// Scan an opening code fence.
int _scan_open_code_fence(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0, 192, 192, 192, 192, 192, 192, 192,
		192, 192,   0, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		144, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192,  96, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192,
		192, 192, 192, 192, 192, 192, 192, 192
	};
	yych = *p;
	if (yych <= '_') {
		if (yych != '\n') goto yy840;
	} else {
		if (yych <= '`') goto yy841;
		if (yych == '~') goto yy842;
		goto yy840;
	}
yy839:
	{ return 0; }
yy840:
	++p;
	goto yy839;
yy841:
	yych = *(marker = ++p);
	if (yych == '`') goto yy843;
	goto yy839;
yy842:
	yych = *(marker = ++p);
	if (yych == '~') goto yy845;
	goto yy839;
yy843:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy846;
yy844:
	p = marker;
	goto yy839;
yy845:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy847;
	goto yy844;
yy846:
	yych = *++p;
	if (yybm[0+yych] & 16) goto yy846;
	if (yych <= 0x00) goto yy844;
	if (yych == '\n') {
		marker = p;
		goto yy849;
	}
	marker = p;
	goto yy848;
yy847:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy847;
	if (yych <= 0x00) goto yy844;
	if (yych == '\n') {
		marker = p;
		goto yy851;
	}
	marker = p;
	goto yy850;
yy848:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy848;
	if (yych <= 0x00) goto yy844;
	if (yych >= '\v') goto yy844;
yy849:
	++p;
	p = marker;
	{ return (p - start); }
yy850:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy850;
	if (yych <= 0x00) goto yy844;
	if (yych >= '\v') goto yy844;
yy851:
	++p;
	p = marker;
	{ return (p - start); }
}

}

// Scan a closing code fence with length at least len.
int _scan_close_code_fence(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	static const unsigned char yybm[256] = {
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0, 128,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		128,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		 32,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,  64,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0,
		  0,   0,   0,   0,   0,   0,   0,   0
	};
	yych = *p;
	if (yych <= '_') {
		if (yych != '\n') goto yy854;
	} else {
		if (yych <= '`') goto yy855;
		if (yych == '~') goto yy856;
		goto yy854;
	}
yy853:
	{ return 0; }
yy854:
	++p;
	goto yy853;
yy855:
	yych = *(marker = ++p);
	if (yych == '`') goto yy857;
	goto yy853;
yy856:
	yych = *(marker = ++p);
	if (yych == '~') goto yy859;
	goto yy853;
yy857:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy860;
yy858:
	p = marker;
	goto yy853;
yy859:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy861;
	goto yy858;
yy860:
	yych = *++p;
	if (yybm[0+yych] & 32) goto yy860;
	if (yych <= '\n') {
		if (yych <= 0x08) goto yy858;
		if (yych <= '\t') {
			marker = p;
			goto yy862;
		}
		marker = p;
		goto yy863;
	} else {
		if (yych == ' ') {
			marker = p;
			goto yy862;
		}
		goto yy858;
	}
yy861:
	yych = *++p;
	if (yybm[0+yych] & 64) goto yy861;
	if (yych <= '\n') {
		if (yych <= 0x08) goto yy858;
		if (yych <= '\t') {
			marker = p;
			goto yy864;
		}
		marker = p;
		goto yy865;
	} else {
		if (yych == ' ') {
			marker = p;
			goto yy864;
		}
		goto yy858;
	}
yy862:
	yych = *++p;
	if (yybm[0+yych] & 128) goto yy862;
	if (yych <= 0x08) goto yy858;
	if (yych >= '\v') goto yy858;
yy863:
	++p;
	p = marker;
	{ return (p - start); }
yy864:
	yych = *++p;
	if (yych <= '\n') {
		if (yych <= 0x08) goto yy858;
		if (yych <= '\t') goto yy864;
	} else {
		if (yych == ' ') goto yy864;
		goto yy858;
	}
yy865:
	++p;
	p = marker;
	{ return (p - start); }
}

}

// Scans an entity.
// Returns number of chars matched.
int _scan_entity(const unsigned char *p)
{
  const unsigned char *marker = NULL;
  const unsigned char *start = p;

{
	unsigned char yych;
	yych = *p;
	if (yych == '\n') goto yy867;
	if (yych == '&') goto yy869;
	goto yy868;
yy867:
	{ return 0; }
yy868:
	++p;
	goto yy867;
yy869:
	yych = *(marker = ++p);
	if (yych <= '@') {
		if (yych != '#') goto yy867;
	} else {
		if (yych <= 'Z') goto yy871;
		if (yych <= '`') goto yy867;
		if (yych <= 'z') goto yy871;
		goto yy867;
	}
	yych = *++p;
	if (yych <= 'W') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy872;
	} else {
		if (yych <= 'X') goto yy873;
		if (yych == 'x') goto yy873;
	}
yy870:
	p = marker;
	goto yy867;
yy871:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy874;
		goto yy870;
	} else {
		if (yych <= 'Z') goto yy874;
		if (yych <= '`') goto yy870;
		if (yych <= 'z') goto yy874;
		goto yy870;
	}
yy872:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy875;
	if (yych == ';') goto yy876;
	goto yy870;
yy873:
	yych = *++p;
	if (yych <= '@') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy877;
		goto yy870;
	} else {
		if (yych <= 'F') goto yy877;
		if (yych <= '`') goto yy870;
		if (yych <= 'f') goto yy877;
		goto yy870;
	}
yy874:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy878;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy878;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy878;
			goto yy870;
		}
	}
yy875:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy879;
	if (yych != ';') goto yy870;
yy876:
	++p;
	{ return (p - start); }
yy877:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy880;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy880;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy880;
			goto yy870;
		}
	}
yy878:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy881;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy881;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy881;
			goto yy870;
		}
	}
yy879:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy882;
	if (yych == ';') goto yy876;
	goto yy870;
yy880:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy883;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy883;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy883;
			goto yy870;
		}
	}
yy881:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy884;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy884;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy884;
			goto yy870;
		}
	}
yy882:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy885;
	if (yych == ';') goto yy876;
	goto yy870;
yy883:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy886;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy886;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy886;
			goto yy870;
		}
	}
yy884:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy887;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy887;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy887;
			goto yy870;
		}
	}
yy885:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy888;
	if (yych == ';') goto yy876;
	goto yy870;
yy886:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy889;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy889;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy889;
			goto yy870;
		}
	}
yy887:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy890;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy890;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy890;
			goto yy870;
		}
	}
yy888:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy891;
	if (yych == ';') goto yy876;
	goto yy870;
yy889:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy892;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy892;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy892;
			goto yy870;
		}
	}
yy890:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy893;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy893;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy893;
			goto yy870;
		}
	}
yy891:
	yych = *++p;
	if (yych <= '/') goto yy870;
	if (yych <= '9') goto yy894;
	if (yych == ';') goto yy876;
	goto yy870;
yy892:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy895;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy895;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy895;
			goto yy870;
		}
	}
yy893:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy896;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy896;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy896;
			goto yy870;
		}
	}
yy894:
	yych = *++p;
	if (yych == ';') goto yy876;
	goto yy870;
yy895:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy894;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'F') {
			if (yych <= '@') goto yy870;
			goto yy894;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'f') goto yy894;
			goto yy870;
		}
	}
yy896:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy897;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy897:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy898;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy898:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy899;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy899:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy900;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy900:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy901;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy901:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy902;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy902:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy903;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy903:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy904;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy904:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy905;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy905:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy906;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy906:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy907;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy907:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy908;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy908:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy909;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy909:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy910;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy910:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy911;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy911:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy912;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy912:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy913;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy913:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy914;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy914:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy915;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy915:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy916;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy916:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy917;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy917:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy918;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
		} else {
			if (yych <= '`') goto yy870;
			if (yych >= '{') goto yy870;
		}
	}
yy918:
	yych = *++p;
	if (yych <= ';') {
		if (yych <= '/') goto yy870;
		if (yych <= '9') goto yy894;
		if (yych <= ':') goto yy870;
		goto yy876;
	} else {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy870;
			goto yy894;
		} else {
			if (yych <= '`') goto yy870;
			if (yych <= 'z') goto yy894;
			goto yy870;
		}
	}
}

}
bug57_original.re:40:20: warning: escape has no effect: '\"' [-Wuseless-escape]
bug57_original.re:42:23: warning: escape has no effect: '\"' [-Wuseless-escape]
bug57_original.re:42:28: warning: escape has no effect: '\"' [-Wuseless-escape]
bug57_original.re:42:37: warning: escape has no effect: '\"' [-Wuseless-escape]
bug57_original.re:80:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:95:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:106:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:120:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:134:54: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:135:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:150:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:159:17: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:171:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:183:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:198:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:210:28: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:222:5: warning: rule matches empty string [-Wmatch-empty-string]
bug57_original.re:235:5: warning: rule matches empty string [-Wmatch-empty-string]
