%{
#include < stdio. h>
#include < stdlib. h>
%}
%%
// --- Regular Expressions ( token definitions) ---
int [ a- zA- Z_] [ a- zA- Z0- 9 _] *
digit [ 0 - 9 ] +
keyword int
| float | if
| else
| for
| while
| return
// ---
[ ERROR] AxiosError: {
"error": {
"message": "You didn't provide an API key. You need to provide your API key in an Authorization header using Bearer auth (i.e. Authorization: Bearer YOUR_KEY), or as the password field (with blank username) if you' re accessing the API from your browser and are prompted for a username and password. You can obtain an API key from https: // p... content- available- to- author- only... i. com/ account/ api- keys. ",
"type": "invalid_request_error",
"param": null,
"code": null
}
}
401
{
"date": "Tue, 12 Aug 2025 06 : 24 : 16 GMT",
"content- type": "application/ json; charset= utf- 8 ",
"content- length": "496 ",
"connection": "close",
"vary": "Origin",
"x- request- id": "req_7385805c256343c5992ae76fa073ca69",
"x- envoy- upstream- service- time": "3 ",
"cf- cache- status": "DYNAMIC",
"set- cookie": [
"__cf_bm= uymJ3HCgvMlhxdO1m_cjEsTSYfqygOKp6xQ4PnHoK8k- 1754979856 - 1. 0. 1. 1- jTgbLeDJ7FJPleUJgTkkDoVWfsh_sgUs. 9W. Md68RBVFS8pN0KeTUCX3yJ13e2AcxSmZl6MtwHfZb2b6irY92bHdhvLV. rHAPInV966NihY; path= / ; expires= Tue, 12 - Aug- 25 06 : 54 : 16 GMT; domain= . api. openai. com; HttpOnly; Secure; SameSite= None",
"_cfuvid= VieeUa9Ar4WDnRjTUgxeIYGShYWAARMC. RWLlt48ZHA- 1754979856286 - 0. 0. 1. 1- 604800000 ; path= / ; domain= . api. openai. com; HttpOnly; Secure; SameSite= None"
] ,
"strict- transport- security": "max- age= 31536000 ; includeSubDomains; preload",
"x- content- type- options": "nosniff",
"server": "cloudflare",
"cf- ray": "96dde37e78db9f41- HYD",
"alt- svc": "h3= \": 443 \"; ma= 86400 "
}
Request failed with status code 401Token Rules and Actions ---
{ keyword} { printf( "Token: %s | Type: KEYWORD\n", yytext); }
{ float } { printf
( "Token
: %s | Type: CONSTANT (FLOAT)\n", yytext); } { digit} { printf( "Token: %s | Type: CONSTANT (INT)\n", yytext); }
{ int} { printf( "Token: %s | Type: IDENTIFIER\n", yytext); }
"+ "| "- "| "* "| "/ " { printf( "Token: %s | Type: OPERATOR\n", yytext); }
"( " | ") " | "; " | ", " { printf( "Token: %s | Type: PUNCTUATION\n", yytext); }
[ \t\n\r] + { /* Ignore whitespace */ }
. { printf( "Token: %s | Type: UNKNOWN\n", yytext); }
%%
// --- Main Function ---
int main( int argc, char** argv) {
yylex( ) ; // Start lexical analysis
return 0 ;
}
JXsKI2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KJX0KCiUlCi8vIC0tLSBSZWd1bGFyIEV4cHJlc3Npb25zICh0b2tlbiBkZWZpbml0aW9ucykgLS0tCmludCAgICAgICAgICAgICBbYS16QS1aX11bYS16QS1aMC05X10qCmZsb2F0ICAgICAgICAgICBbMC05XStcLlswLTldKwpkaWdpdCAgICAgICAgICAgWzAtOV0rCmtleXdvcmQgICAgICAgICBpbnR8ZmxvYXR8aWZ8ZWxzZXxmb3J8d2hpbGV8cmV0dXJuCgovLyAtLS0gCltFUlJPUl0gQXhpb3NFcnJvcjogewogICJlcnJvciI6IHsKICAgICJtZXNzYWdlIjogIllvdSBkaWRuJ3QgcHJvdmlkZSBhbiBBUEkga2V5LiBZb3UgbmVlZCB0byBwcm92aWRlIHlvdXIgQVBJIGtleSBpbiBhbiBBdXRob3JpemF0aW9uIGhlYWRlciB1c2luZyBCZWFyZXIgYXV0aCAoaS5lLiBBdXRob3JpemF0aW9uOiBCZWFyZXIgWU9VUl9LRVkpLCBvciBhcyB0aGUgcGFzc3dvcmQgZmllbGQgKHdpdGggYmxhbmsgdXNlcm5hbWUpIGlmIHlvdSdyZSBhY2Nlc3NpbmcgdGhlIEFQSSBmcm9tIHlvdXIgYnJvd3NlciBhbmQgYXJlIHByb21wdGVkIGZvciBhIHVzZXJuYW1lIGFuZCBwYXNzd29yZC4gWW91IGNhbiBvYnRhaW4gYW4gQVBJIGtleSBmcm9tIGh0dHBzOi8vcC4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uaS5jb20vYWNjb3VudC9hcGkta2V5cy4iLAogICAgInR5cGUiOiAiaW52YWxpZF9yZXF1ZXN0X2Vycm9yIiwKICAgICJwYXJhbSI6IG51bGwsCiAgICAiY29kZSI6IG51bGwKICB9Cn0KNDAxCnsKICAiZGF0ZSI6ICJUdWUsIDEyIEF1ZyAyMDI1IDA2OjI0OjE2IEdNVCIsCiAgImNvbnRlbnQtdHlwZSI6ICJhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04IiwKICAiY29udGVudC1sZW5ndGgiOiAiNDk2IiwKICAiY29ubmVjdGlvbiI6ICJjbG9zZSIsCiAgInZhcnkiOiAiT3JpZ2luIiwKICAieC1yZXF1ZXN0LWlkIjogInJlcV83Mzg1ODA1YzI1NjM0M2M1OTkyYWU3NmZhMDczY2E2OSIsCiAgIngtZW52b3ktdXBzdHJlYW0tc2VydmljZS10aW1lIjogIjMiLAogICJjZi1jYWNoZS1zdGF0dXMiOiAiRFlOQU1JQyIsCiAgInNldC1jb29raWUiOiBbCiAgICAiX19jZl9ibT11eW1KM0hDZ3ZNbGh4ZE8xbV9jakVzVFNZZnF5Z09LcDZ4UTRQbkhvSzhrLTE3NTQ5Nzk4NTYtMS4wLjEuMS1qVGdiTGVESjdGSlBsZVVKZ1Rra0RvVldmc2hfc2dVcy45Vy5NZDY4UkJWRlM4cE4wS2VUVUNYM3lKMTNlMkFjeFNtWmw2TXR3SGZaYjJiNmlyWTkyYkhkaHZMVi5ySEFQSW5WOTY2TmloWTsgcGF0aD0vOyBleHBpcmVzPVR1ZSwgMTItQXVnLTI1IDA2OjU0OjE2IEdNVDsgZG9tYWluPS5hcGkub3BlbmFpLmNvbTsgSHR0cE9ubHk7IFNlY3VyZTsgU2FtZVNpdGU9Tm9uZSIsCiAgICAiX2NmdXZpZD1WaWVlVWE5QXI0V0RuUmpUVWd4ZUlZR1NoWVdBQVJNQy5SV0xsdDQ4WkhBLTE3NTQ5Nzk4NTYyODYtMC4wLjEuMS02MDQ4MDAwMDA7IHBhdGg9LzsgZG9tYWluPS5hcGkub3BlbmFpLmNvbTsgSHR0cE9ubHk7IFNlY3VyZTsgU2FtZVNpdGU9Tm9uZSIKICBdLAogICJzdHJpY3QtdHJhbnNwb3J0LXNlY3VyaXR5IjogIm1heC1hZ2U9MzE1MzYwMDA7IGluY2x1ZGVTdWJEb21haW5zOyBwcmVsb2FkIiwKICAieC1jb250ZW50LXR5cGUtb3B0aW9ucyI6ICJub3NuaWZmIiwKICAic2VydmVyIjogImNsb3VkZmxhcmUiLAogICJjZi1yYXkiOiAiOTZkZGUzN2U3OGRiOWY0MS1IWUQiLAogICJhbHQtc3ZjIjogImgzPVwiOjQ0M1wiOyBtYT04NjQwMCIKfQoKUmVxdWVzdCBmYWlsZWQgd2l0aCBzdGF0dXMgY29kZSA0MDFUb2tlbiBSdWxlcyBhbmQgQWN0aW9ucyAtLS0Ke2tleXdvcmR9ICAgICAgIHsgcHJpbnRmKCJUb2tlbjogJXMgfCBUeXBlOiBLRVlXT1JEXG4iLCB5eXRleHQpOyB9CntmbG9hdH0gICAgICAgICB7IHByaW50ZigiVG9rZW46ICVzIHwgVHlwZTogQ09OU1RBTlQgKEZMT0FUKVxuIiwgeXl0ZXh0KTsgfQp7ZGlnaXR9ICAgICAgICAgeyBwcmludGYoIlRva2VuOiAlcyB8IFR5cGU6IENPTlNUQU5UIChJTlQpXG4iLCB5eXRleHQpOyB9CntpbnR9ICAgICAgICAgICB7IHByaW50ZigiVG9rZW46ICVzIHwgVHlwZTogSURFTlRJRklFUlxuIiwgeXl0ZXh0KTsgfQoiKyJ8Ii0ifCIqInwiLyIgeyBwcmludGYoIlRva2VuOiAlcyB8IFR5cGU6IE9QRVJBVE9SXG4iLCB5eXRleHQpOyB9CiIoIiB8ICIpIiB8ICI7IiB8ICIsIiB7IHByaW50ZigiVG9rZW46ICVzIHwgVHlwZTogUFVOQ1RVQVRJT05cbiIsIHl5dGV4dCk7IH0KWyBcdFxuXHJdKyAgICAgIHsgLyogSWdub3JlIHdoaXRlc3BhY2UgKi8gfQouICAgICAgICAgICAgICAgeyBwcmludGYoIlRva2VuOiAlcyB8IFR5cGU6IFVOS05PV05cbiIsIHl5dGV4dCk7IH0KCiUlCgovLyAtLS0gTWFpbiBGdW5jdGlvbiAtLS0KaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KSB7CiAgICB5eWxleCgpOyAgLy8gU3RhcnQgbGV4aWNhbCBhbmFseXNpcwogICAgcmV0dXJuIDA7Cn0=