/* Generated by re2c */
// re2c $INPUT -o $OUTPUT -i
// overlapping trailing contexts of variable length:
// in principle, we need multiple tags here, but in this
// particular case all tags can be implemented using sinle
// variable (due to tag deduplication)


{
	YYCTYPE yych;
	if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
	yych = *YYCURSOR;
	switch (yych) {
		case 'a': goto yy2;
		default: goto yy1;
	}
yy1:
	++YYCURSOR;
	{ d }
yy2:
	yych = *++YYCURSOR;
	YYCTXMARKER = YYCURSOR;
	switch (yych) {
		case 'b': goto yy4;
		default: goto yy3;
	}
yy3:
	YYCURSOR = YYCTXMARKER;
	{ 1 }
yy4:
	yych = *++YYCURSOR;
	switch (yych) {
		case 'b': goto yy6;
		case 'c':
			YYCTXMARKER = YYCURSOR;
			goto yy7;
		default:
			YYCTXMARKER = YYCURSOR;
			goto yy5;
	}
yy5:
	YYCURSOR = YYCTXMARKER;
	{ 0 }
yy6:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	switch (yych) {
		case 'b': goto yy6;
		default: goto yy3;
	}
yy7:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	switch (yych) {
		case 'c': goto yy7;
		default: goto yy5;
	}
}

