%{
#include<stdio.h>
int a = 0, b = 0;
void calc();
%}
%%
[ \s\n\t]* {}
[0-9]* {if(a) b = atoi(yytext);
else a = atoi(yytext);}
"+" {printf("%d + %d = %d\n",a,b,a+b);a=0;b=0;}
"-" {printf("%d - %d = %d\n",a,b,a-b);a=0;b=0;}
"*" {printf("%d * %d = %d\n",a,b,a*b);a=0;b=0;}
"/" {if(b) printf("%d / %d = %d\n",a,b,a/b); else printf("INVALID\n");a=0;b=0;}
"%" {if(b) printf("%d % %d = %d\n",a,b,a%b); else printf("INVALID\n");a=0;b=0;}
%%
int yywrap(){
return 1;
}
int main(){
yylex();
fclose(yyin);
}
JXsKIAkjaW5jbHVkZTxzdGRpby5oPgogCWludCBhID0gMCwgYiA9IDA7CiAJdm9pZCBjYWxjKCk7CiV9CiUlClsgXHNcblx0XSoge30KWzAtOV0qIHtpZihhKSBiID0gYXRvaSh5eXRleHQpOwoJZWxzZSBhID0gYXRvaSh5eXRleHQpO30KIisiIHtwcmludGYoIiVkICsgJWQgPSAlZFxuIixhLGIsYStiKTthPTA7Yj0wO30KIi0iIHtwcmludGYoIiVkIC0gJWQgPSAlZFxuIixhLGIsYS1iKTthPTA7Yj0wO30KIioiIHtwcmludGYoIiVkICogJWQgPSAlZFxuIixhLGIsYSpiKTthPTA7Yj0wO30KIi8iIHtpZihiKSBwcmludGYoIiVkIC8gJWQgPSAlZFxuIixhLGIsYS9iKTsgZWxzZSBwcmludGYoIklOVkFMSURcbiIpO2E9MDtiPTA7fQoiJSIge2lmKGIpIHByaW50ZigiJWQgJSAlZCA9ICVkXG4iLGEsYixhJWIpOyBlbHNlIHByaW50ZigiSU5WQUxJRFxuIik7YT0wO2I9MDt9CiUlCmludCB5eXdyYXAoKXsKCXJldHVybiAxOwp9CmludCBtYWluKCl7Cgl5eWxleCgpOwoJZmNsb3NlKHl5aW4pOwp9Cg==