[Init] - Parse Jokes (make sure the format is correct) + load to memory - Initialize Black- and Whitelists - Initialize Documentation Page - Start Daemon - Start HTTP server [On HTTP Request] > IF IP is rate limited - return 429 error > ELSE IF IP is on blacklist - return 403 error > ELSE > IF path matches a script in ./endpoints - execute that script > ELSE IF path == ./ > IF browser supports encoding - serve documentation with encoding according to encoding priority > ELSE - serve documentation without encoding > ELSE - return 404 error [On Init + Daemon Interval] > IF documentation file(s) changed - inject variables into documentation files - encode all files with Gzip, Deflate and Brotli encoding > ELSE - return