%{
#include <stdio.h>
%}
%option noyywrap
NOUN destiny|Destiny
PRONOUN it|It
VERB run|Run|arrives|Arrives|Dread|dread
ADJECTIVE same|Same
ADVERB from|From
DETERMINERS the|The|all|All
PUNCTUATIONS [\.\,\?\!]
%%
{NOUN} {printf("%s -> NOUN\n",yytext); }
{PRONOUN} {printf("%s -> PRONOUN\n",yytext); }
{VERB} {printf("%s -> VERB\n",yytext); }
{ADVERB} {printf("%s -> ADVERB\n",yytext); }
{ADJECTIVE} {printf("%s -> ADJECTIVE\n",yytext); }
{DETERMINERS} {printf("%s -> DETERMINERS\n",yytext); }
{PUNCTUATIONS} {printf("%s -> PUNCTUATIONS\n",yytext); }
[ \t\n]+ ;
. {printf("%s -> UNKNOWN\n",yytext); }
%%
int main(){
yylex();
return 0;
}
JXsKICAgICNpbmNsdWRlIDxzdGRpby5oPgolfQoKJW9wdGlvbiBub3l5d3JhcCAgICAgICAgCgoKTk9VTiBkZXN0aW55fERlc3RpbnkKUFJPTk9VTiBpdHxJdApWRVJCIHJ1bnxSdW58YXJyaXZlc3xBcnJpdmVzfERyZWFkfGRyZWFkCkFESkVDVElWRSBzYW1lfFNhbWUKQURWRVJCIGZyb218RnJvbQpERVRFUk1JTkVSUyB0aGV8VGhlfGFsbHxBbGwKUFVOQ1RVQVRJT05TIFtcLlwsXD9cIV0KCiUlCgp7Tk9VTn0ge3ByaW50ZigiJXMgLT4gTk9VTlxuIix5eXRleHQpOyB9CntQUk9OT1VOfSB7cHJpbnRmKCIlcyAtPiBQUk9OT1VOXG4iLHl5dGV4dCk7IH0Ke1ZFUkJ9IHtwcmludGYoIiVzIC0+IFZFUkJcbiIseXl0ZXh0KTsgfQp7QURWRVJCfSB7cHJpbnRmKCIlcyAtPiBBRFZFUkJcbiIseXl0ZXh0KTsgfQp7QURKRUNUSVZFfSB7cHJpbnRmKCIlcyAtPiBBREpFQ1RJVkVcbiIseXl0ZXh0KTsgfQp7REVURVJNSU5FUlN9IHtwcmludGYoIiVzIC0+IERFVEVSTUlORVJTXG4iLHl5dGV4dCk7IH0Ke1BVTkNUVUFUSU9OU30ge3ByaW50ZigiJXMgLT4gUFVOQ1RVQVRJT05TXG4iLHl5dGV4dCk7IH0KWyBcdFxuXSsgIDsKLiB7cHJpbnRmKCIlcyAtPiBVTktOT1dOXG4iLHl5dGV4dCk7IH0KCiUlCgppbnQgbWFpbigpewogICAgeXlsZXgoKTsKICAgIHJldHVybiAwOwp9Cg==