%{
#include "y.tab.h";
%}
%%
[a] return A;
[b] return B;
.return yytext[0];
\n return yytext [0];
%%
%{
#include<stdio.h>
%}
%token a,b
%%
input:expr\n{return 0;}
expr:X;
X=AXB|;
%%
main()
{
printf("enter string\n");
if(!yyparse())
{
Printf ("valid");
exit (0);
}
}
void yyerror (char*s)
{
printf("syntax error")
}
JXsKI2luY2x1ZGUgInkudGFiLmgiOwolfQolJQpbYV0gcmV0dXJuIEE7CltiXSByZXR1cm4gQjsKLnJldHVybiB5eXRleHRbMF07ClxuIHJldHVybiB5eXRleHQgWzBdOwolJQolewojaW5jbHVkZTxzdGRpby5oPgolfQoldG9rZW4gYSxiCiUlCmlucHV0OmV4cHJcbntyZXR1cm4gMDt9CmV4cHI6WDsKWD1BWEJ8OwolJQptYWluKCkKewpwcmludGYoImVudGVyIHN0cmluZ1xuIik7CmlmKCF5eXBhcnNlKCkpCnsKUHJpbnRmICgidmFsaWQiKTsKZXhpdCAoMCk7Cn0KfQp2b2lkIHl5ZXJyb3IgKGNoYXIqcykKewpwcmludGYoInN5bnRheCBlcnJvciIpCn0=