From 54e56f237bc39fbaa29faefa724d6f44d5cb811d Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Sun, 13 Apr 2025 16:56:26 +0100 Subject: [PATCH 01/66] start response --- Makefile | 6 +- headers/Response.hpp | 35 ++++++----- headers/WebservHandler.hpp | 10 ++-- main.cpp | 2 +- req.rest | 4 ++ srcs/models/Response.cpp | 104 ++++++++++++++++++++++++--------- srcs/models/WebservHandler.cpp | 16 +++-- 7 files changed, 115 insertions(+), 62 deletions(-) create mode 100644 req.rest diff --git a/Makefile b/Makefile index 7cb8a0c..3eae466 100644 --- a/Makefile +++ b/Makefile @@ -5,13 +5,13 @@ NAME=webserv # OTM SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ -srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp +srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp # ACHAKKAF -SRCS += srcs/cgi/ft_cgi.cpp +SRCS += learning/request.cpp # MOAD -SRCS += +SRCS += srcs/models/Response.cpp #OTM SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp diff --git a/headers/Response.hpp b/headers/Response.hpp index 7b0851c..ee642f8 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,37 +6,40 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/03/20 10:05:20 by mboujama ### ########.fr */ +/* Updated: 2025/04/13 16:08:23 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef RESPONSE_HPP # define RESPONSE_HPP + # include +# include "../learning/request.hpp" +# include "WebservHandler.hpp" +# include class Response { private: + Response(const Response& obj); + Response& operator=(const Response& obj); + ~Response(); + std::string http_version; int status_code; std::string status_text; + std::map headers; std::string body; - + std::string date; + + std::string combineResponse(); + void printResHeaders(void) const; + void handleGet(struct ClientData &client, const Request &req); + void handlePost(struct ClientData &client, const Request &req); + void handleDelete(struct ClientData &client, const Request &req); public: Response(void); - Response(const Response& obj); - Response& operator=(const Response& obj); - ~Response(); - - std::string getHttpVersion(); - int getStatusCode(); - std::string getStatusText(); - std::string getBody(); - - void setHttpVersion(std::string version); - void setStatusCode(int status); - void setStatusText(std::string status); - void setBody(std::string body); -}; + std::string handleResponse( struct ClientData &clientData , const Request &request); +}; #endif diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index c273309..ed82894 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* WebservHandler.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/10 15:20:02 by ochouati ### ########.fr */ +/* Updated: 2025/04/13 09:56:30 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -26,11 +26,13 @@ #include #include #include "debug.hpp" +#include "../learning/request.hpp" +#include "./Response.hpp" # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 20 +# define READ_SIZE 4096 # define CHUNCK_SIZE 4096 enum requestType { @@ -73,6 +75,6 @@ class WebservHandler public: WebservHandler(); - ~WebservHandler(); + ~WebservHandler(); }; diff --git a/main.cpp b/main.cpp index 692866f..3837da6 100644 --- a/main.cpp +++ b/main.cpp @@ -23,7 +23,7 @@ #include void ll(){ //! DELETE ME - system("leaks webserv"); + system("leaks -q webserv"); } int server(char *argFile, char **env) { diff --git a/req.rest b/req.rest new file mode 100644 index 0000000..1c3d768 --- /dev/null +++ b/req.rest @@ -0,0 +1,4 @@ +PUT http://127.0.0.1:8080 HTTP/1.1 +Content-Type: "text/html" + +### \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index ef94e9f..55ffa00 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,65 +6,111 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/03/20 10:06:56 by mboujama ### ########.fr */ +/* Updated: 2025/04/13 16:16:51 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" Response::Response(void) -{ - std::cout << "Response Default constructor called" << std::endl; -} +{} Response::~Response(void) -{ - std::cout << "Response Destructor called" << std::endl; -} +{} Response::Response(const Response& obj) { - std::cout << "Response Copy constructor called" << std::endl; *this = obj; } Response& Response::operator=(const Response& obj) { - std::cout << "Response Copy assignment operator called" << std::endl; - if (this != &obj) - {} + (void) obj; return (*this); } -std::string Response::getHttpVersion() { - return this->http_version; -} -int Response::getStatusCode() { - return this->status_code; -} +std::string getDateTime() { + time_t rawtime; + struct tm * datetime; + char buffer [80]; -std::string Response::getStatusText() { - return this->status_text; + time (&rawtime); + datetime = localtime(&rawtime); + + strftime (buffer,80,"%a, %d %h %Y %T %Z", datetime); + return std::string(buffer); } -std::string Response::getBody() { - return this->body; +void Response::printResHeaders(void) const +{ + std::map::const_iterator it; + for (it = this->headers.begin(); it != this->headers.end(); ++it) + std::cout << it->first << ": " << it->second << std::endl; } +std::string Response::combineResponse(void) { + std::ostringstream res; + + headers["Date"] = getDateTime(); + res << http_version << " " << status_code << " " << status_text << "\r\n"; + std::map::iterator it; + for (it = headers.begin(); it != headers.end(); it++) { + res << it->first << ": " << it->second << "\r\n"; + } + res << "\r\n" << body; + return res.str(); +} -void Response::setHttpVersion(std::string version) { - this->http_version = version; +void Response::handleGet(struct ClientData &client, const Request &req) { + (void) client; + (void) req; + std::cout << "get" << std::endl; } -void Response::setStatusCode(int status) { - this->status_code = status; +void Response::handlePost(struct ClientData &client, const Request &req) { + (void) client; + (void) req; + std::cout << "post" << std::endl; } -void Response::setStatusText(std::string status) { - this->status_text = status; +void Response::handleDelete(struct ClientData &client, const Request &req) { + (void) client; + (void) req; + std::cout << "delete" << std::endl; } -void Response::setBody(std::string body) { - this->body = body; +std::string Response::handleResponse(struct ClientData &client, const Request &req) { + http_version = "HTTP/1.1"; + + if (!client.server->getAllowedMethods()[req.getMethod()]) { + status_code = 405; + status_text = "Method Not Allowed"; + headers["Content-Length"] = "0"; + headers["Server"] = "NorthServ/1.0"; + headers["Allow"] = "GET, POST, DELETE"; + headers["Connection"] = "close"; + return (combineResponse()); + } + + if (req.getMethod() == "GET") + handleGet(client, req); + else if (req.getMethod() == "POST") + std::cout << "post" << std::endl; + else if (req.getMethod() == "DELETE") + std::cout << "delete" << std::endl; + else { + + } + + status_code = 200; + status_text = "OK"; + body = """\n\t\n\t\t
\n\t\t\t

Hello World

\n\t\t
\n\t\n"""; + headers["Server"] = "NorthServ/1.0"; + headers["Content-Type"] = "text/html"; + headers["Content-Length"] = std::to_string(body.size()); + headers["Connection"] = "close"; + headers["Date"] = ""; + + return (combineResponse()); } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index d19ede0..bf7f468 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* WebservHandler.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/10 16:08:54 by ochouati ### ########.fr */ +/* Updated: 2025/04/12 16:50:01 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -134,12 +134,10 @@ bool WebservHandler::isRequestValid(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { - std::string exampleHtml = "

Welcome to 1337 Webserv

"; - std::string response = "HTTP/1.1 200 OK\r\n" - "Content-Type: text/html\r\n" - "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" - "\r\n" + exampleHtml; - printWarning("handleRequest...."); - std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; + Request req(client.headers + client.request); + Response *res = new Response(); + + std::string response = res->handleResponse(client, req); + std::cout << "=======>" << response << "<=======" << std::endl; send(client.fd, response.c_str(), response.size(), 0); } From d6f3893151746014559070fd938984cd36c77f45 Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Thu, 17 Apr 2025 08:57:10 +0100 Subject: [PATCH 02/66] handle not found response and not allowed methods --- Makefile | 2 +- headers/Response.hpp | 11 +++-- headers/ResponseUtils.hpp | 26 ++++++++++++ req.rest | 7 +++- srcs/models/Response.cpp | 78 +++++++++++++++++++++--------------- srcs/utils/ResponseUtils.cpp | 48 ++++++++++++++++++++++ 6 files changed, 134 insertions(+), 38 deletions(-) create mode 100644 headers/ResponseUtils.hpp create mode 100644 srcs/utils/ResponseUtils.cpp diff --git a/Makefile b/Makefile index 3eae466..333167d 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp SRCS += learning/request.cpp # MOAD -SRCS += srcs/models/Response.cpp +SRCS += srcs/models/Response.cpp srcs/utils/ResponseUtils.cpp #OTM SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp diff --git a/headers/Response.hpp b/headers/Response.hpp index ee642f8..ca102f5 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/13 16:08:23 by mboujama ### ########.fr */ +/* Updated: 2025/04/15 13:03:12 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,9 +14,10 @@ # define RESPONSE_HPP # include -# include "../learning/request.hpp" -# include "WebservHandler.hpp" # include +# include "../learning/request.hpp" +# include "./WebservHandler.hpp" +# include "./ResponseUtils.hpp" class Response { @@ -34,9 +35,13 @@ class Response std::string combineResponse(); void printResHeaders(void) const; + void handleGet(struct ClientData &client, const Request &req); void handlePost(struct ClientData &client, const Request &req); void handleDelete(struct ClientData &client, const Request &req); + + int checkRequestedPath(struct ClientData &client, const Request &req); + int checkAllowedMethods(struct ClientData &client, const Request &req); public: Response(void); std::string handleResponse( struct ClientData &clientData , const Request &request); diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp new file mode 100644 index 0000000..6512926 --- /dev/null +++ b/headers/ResponseUtils.hpp @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ResponseUtils.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mboujama +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ +/* Updated: 2025/04/15 13:03:28 by mboujama ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#pragma once + +# include +# include +# include +# include +# include + +class ResponseUtils { + public: + static std::string getDateTime(); + static std::string allowHeaderValue(std::map allowedMethods); + static bool pathExists(const std::string& path); +}; \ No newline at end of file diff --git a/req.rest b/req.rest index 1c3d768..e162ca4 100644 --- a/req.rest +++ b/req.rest @@ -1,4 +1,9 @@ +#GET, POST, DELETE PUT http://127.0.0.1:8080 HTTP/1.1 Content-Type: "text/html" -### \ No newline at end of file +### + +#GET +GET http://127.0.0.1:9090 HTTP/1.1 +Content-Type: "text/html" diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 55ffa00..933aece 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,14 +6,16 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/13 16:16:51 by mboujama ### ########.fr */ +/* Updated: 2025/04/16 10:18:55 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" Response::Response(void) -{} +{ + headers["Server"] = "NorthServ/1.0"; +} Response::~Response(void) {} @@ -29,19 +31,6 @@ Response& Response::operator=(const Response& obj) return (*this); } - -std::string getDateTime() { - time_t rawtime; - struct tm * datetime; - char buffer [80]; - - time (&rawtime); - datetime = localtime(&rawtime); - - strftime (buffer,80,"%a, %d %h %Y %T %Z", datetime); - return std::string(buffer); -} - void Response::printResHeaders(void) const { std::map::const_iterator it; @@ -52,16 +41,48 @@ void Response::printResHeaders(void) const std::string Response::combineResponse(void) { std::ostringstream res; - headers["Date"] = getDateTime(); + headers["Date"] = ResponseUtils::getDateTime(); res << http_version << " " << status_code << " " << status_text << "\r\n"; std::map::iterator it; - for (it = headers.begin(); it != headers.end(); it++) { + for (it = headers.begin(); it != headers.end(); it++) res << it->first << ": " << it->second << "\r\n"; - } res << "\r\n" << body; return res.str(); } +// Check if requested url exists +int Response::checkRequestedPath(struct ClientData &client, const Request &req) { + //! ↓↓↓ equals the "location_root" ↓↓↓ + std::string root_path = "/var/www/html"; + std::string full_path = root_path + req.getPath(); + + if (!ResponseUtils::pathExists(full_path)) { + status_code = 404; + status_text = "Not Found"; + body = client.server->getErrorPage404(); + headers["Content-Type"] = "text/html"; + headers["Content-Length"] = std::to_string(body.size()); + headers["Connection"] = "close"; + return 0; + } + return 1; +} + +int Response::checkAllowedMethods(struct ClientData &client, const Request &req) { + if (!client.server->getAllowedMethods()[req.getMethod()]) { + status_code = 405; + status_text = "Method Not Allowed"; + + body = "

405 Not Allowed Method

"; + headers["Content-Type"] = "text/html"; + headers["Content-Length"] = std::to_string(body.size()); + headers["Allow"] = ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()); + headers["Connection"] = "close"; + return 0; + } + return 1; +} + void Response::handleGet(struct ClientData &client, const Request &req) { (void) client; (void) req; @@ -81,17 +102,11 @@ void Response::handleDelete(struct ClientData &client, const Request &req) { } std::string Response::handleResponse(struct ClientData &client, const Request &req) { - http_version = "HTTP/1.1"; + http_version = req.getVersion(); - if (!client.server->getAllowedMethods()[req.getMethod()]) { - status_code = 405; - status_text = "Method Not Allowed"; - headers["Content-Length"] = "0"; - headers["Server"] = "NorthServ/1.0"; - headers["Allow"] = "GET, POST, DELETE"; - headers["Connection"] = "close"; - return (combineResponse()); - } + //TODO: add checkRedirect: I need the + if (!checkRequestedPath(client, req) || !checkAllowedMethods(client, req)) + return combineResponse(); if (req.getMethod() == "GET") handleGet(client, req); @@ -99,18 +114,15 @@ std::string Response::handleResponse(struct ClientData &client, const Request &r std::cout << "post" << std::endl; else if (req.getMethod() == "DELETE") std::cout << "delete" << std::endl; - else { - - } status_code = 200; status_text = "OK"; - body = """\n\t\n\t\t
\n\t\t\t

Hello World

\n\t\t
\n\t\n"""; + body = "

All Is Good

"; headers["Server"] = "NorthServ/1.0"; headers["Content-Type"] = "text/html"; headers["Content-Length"] = std::to_string(body.size()); headers["Connection"] = "close"; headers["Date"] = ""; - + std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; return (combineResponse()); } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp new file mode 100644 index 0000000..13b978d --- /dev/null +++ b/srcs/utils/ResponseUtils.cpp @@ -0,0 +1,48 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ResponseUtils.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mboujama +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ +/* Updated: 2025/04/15 13:08:49 by mboujama ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../../headers/ResponseUtils.hpp" + +std::string ResponseUtils::getDateTime() { + time_t rawtime; + struct tm * datetime; + char buffer [80]; + + time (&rawtime); + datetime = localtime(&rawtime); + + strftime (buffer,80,"%a, %d %h %Y %T %Z", datetime); + return std::string(buffer); +} + +std::string ResponseUtils::allowHeaderValue(std::map allowedMethods) { + std::ostringstream oss; + bool first = true; + + std::map::iterator it; + for (it = allowedMethods.begin(); it != allowedMethods.end(); it++) { + if (it->second) { + if (!first) oss << ", "; + oss << it->first; + first = false; + } + } + return oss.str(); +} + +bool ResponseUtils::pathExists(const std::string& path) { + struct stat info; + + if (stat(path.c_str(), &info) != 0) + return 0; + return 1; +} \ No newline at end of file From 783817596e0d69ed07c0519b1ae9c1711efa322d Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Sun, 20 Apr 2025 11:39:49 +0100 Subject: [PATCH 03/66] switch to constructor --- headers/Response.hpp | 9 ++--- headers/ResponseUtils.hpp | 4 ++- headers/WebservHandler.hpp | 34 +++++++++--------- srcs/models/Response.cpp | 65 +++++++++++++++++----------------- srcs/models/WebservHandler.cpp | 11 +++--- srcs/utils/ResponseUtils.cpp | 9 ++++- var/www/app/404.html | 13 +++++++ var/www/app/500.html | 13 +++++++ var/www/app/index.html | 11 ++++++ 9 files changed, 109 insertions(+), 60 deletions(-) create mode 100644 var/www/app/404.html create mode 100644 var/www/app/500.html create mode 100644 var/www/app/index.html diff --git a/headers/Response.hpp b/headers/Response.hpp index ca102f5..2285761 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/15 13:03:12 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 11:14:10 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -32,19 +32,20 @@ class Response std::map headers; std::string body; std::string date; + int fd; - std::string combineResponse(); void printResHeaders(void) const; void handleGet(struct ClientData &client, const Request &req); void handlePost(struct ClientData &client, const Request &req); void handleDelete(struct ClientData &client, const Request &req); - int checkRequestedPath(struct ClientData &client, const Request &req); + int checkRequestedPath(struct ClientData &client, const std::string &req); int checkAllowedMethods(struct ClientData &client, const Request &req); public: Response(void); - std::string handleResponse( struct ClientData &clientData , const Request &request); + Response(struct ClientData &clientData , const Request &request); + std::string combineResponse(); }; #endif diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index 6512926..e8650aa 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/15 13:03:28 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 14:04:05 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,10 +17,12 @@ # include # include # include +#include class ResponseUtils { public: static std::string getDateTime(); static std::string allowHeaderValue(std::map allowedMethods); static bool pathExists(const std::string& path); + static int openFile(const std::string& filepath); }; \ No newline at end of file diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index ed82894..679cb3e 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,28 +6,28 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/13 09:56:30 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 13:54:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once # include "FtPars.hpp" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "debug.hpp" -#include "../learning/request.hpp" -#include "./Response.hpp" +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include "debug.hpp" +# include "../learning/request.hpp" +# include "./Response.hpp" # define RUNNING 1 # define POLL_TIMEOUT 0 @@ -44,6 +44,7 @@ enum requestType { }; struct ClientData { + Response *response; int fd; requestType type; bool isRequestComplete; @@ -76,5 +77,4 @@ class WebservHandler public: WebservHandler(); ~WebservHandler(); - }; diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 933aece..d2aa7cf 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/16 10:18:55 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 13:22:27 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,6 +17,33 @@ Response::Response(void) headers["Server"] = "NorthServ/1.0"; } +Response::Response(struct ClientData &client, const Request &req) { + std::string root_path = "/var/www/html"; + std::string full_path = root_path + req.getPath(); + http_version = req.getVersion(); + + //TODO: add checkRedirect: I need the + if (!checkRequestedPath(client, full_path) || !checkAllowedMethods(client, req)) + return ; + fd = ResponseUtils::openFile(full_path); + if (req.getMethod() == "GET") + handleGet(client, req); + else if (req.getMethod() == "POST") + std::cout << "post" << std::endl; + else if (req.getMethod() == "DELETE") + std::cout << "delete" << std::endl; + + status_code = 200; + status_text = "OK"; + body = "

All Is Good

"; + headers["Server"] = "NorthServ/1.0"; + headers["Content-Type"] = "text/html"; + headers["Content-Length"] = std::to_string(body.size()); + headers["Connection"] = "close"; + headers["Date"] = ""; + std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; +} + Response::~Response(void) {} @@ -51,11 +78,7 @@ std::string Response::combineResponse(void) { } // Check if requested url exists -int Response::checkRequestedPath(struct ClientData &client, const Request &req) { - //! ↓↓↓ equals the "location_root" ↓↓↓ - std::string root_path = "/var/www/html"; - std::string full_path = root_path + req.getPath(); - +int Response::checkRequestedPath(struct ClientData &client, const std::string &full_path) { if (!ResponseUtils::pathExists(full_path)) { status_code = 404; status_text = "Not Found"; @@ -84,6 +107,10 @@ int Response::checkAllowedMethods(struct ClientData &client, const Request &req) } void Response::handleGet(struct ClientData &client, const Request &req) { + // TODO: 1- 404 not found if the requested path doesn't exist. + // TODO: 2- 301 if the path doesn't have / at the end. + // TODO: 3- In case of directory Serve index.html if exists otherwise serve autoindex if enabled. + // TODO: 4- Serve the requested file. (void) client; (void) req; std::cout << "get" << std::endl; @@ -100,29 +127,3 @@ void Response::handleDelete(struct ClientData &client, const Request &req) { (void) req; std::cout << "delete" << std::endl; } - -std::string Response::handleResponse(struct ClientData &client, const Request &req) { - http_version = req.getVersion(); - - //TODO: add checkRedirect: I need the - if (!checkRequestedPath(client, req) || !checkAllowedMethods(client, req)) - return combineResponse(); - - if (req.getMethod() == "GET") - handleGet(client, req); - else if (req.getMethod() == "POST") - std::cout << "post" << std::endl; - else if (req.getMethod() == "DELETE") - std::cout << "delete" << std::endl; - - status_code = 200; - status_text = "OK"; - body = "

All Is Good

"; - headers["Server"] = "NorthServ/1.0"; - headers["Content-Type"] = "text/html"; - headers["Content-Length"] = std::to_string(body.size()); - headers["Connection"] = "close"; - headers["Date"] = ""; - std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; - return (combineResponse()); -} diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index bf7f468..60c05db 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/12 16:50:01 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 11:28:04 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -135,9 +135,10 @@ bool WebservHandler::isRequestValid(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { Request req(client.headers + client.request); - Response *res = new Response(); + client.response = new Response(client, req); - std::string response = res->handleResponse(client, req); - std::cout << "=======>" << response << "<=======" << std::endl; - send(client.fd, response.c_str(), response.size(), 0); + std::string res = client.response->combineResponse(); + // std::string response = res->handleResponse(client, req); + std::cout << "=======>" << client.response << "<=======" << std::endl; + send(client.fd, res.c_str(), res.size(), 0); } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index 13b978d..bdee660 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/15 13:08:49 by mboujama ### ########.fr */ +/* Updated: 2025/04/19 14:03:31 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -45,4 +45,11 @@ bool ResponseUtils::pathExists(const std::string& path) { if (stat(path.c_str(), &info) != 0) return 0; return 1; +} + +int ResponseUtils::openFile(const std::string& filepath) { + int fd = open(filepath.c_str(), O_RDONLY); + // ? What is the file didn't open ? + + return fd; } \ No newline at end of file diff --git a/var/www/app/404.html b/var/www/app/404.html new file mode 100644 index 0000000..04f7d53 --- /dev/null +++ b/var/www/app/404.html @@ -0,0 +1,13 @@ + + + + + + NorthServ - 404 Not Found + + +

404 Not Found

+

Requested resource not found

+ Go home + + \ No newline at end of file diff --git a/var/www/app/500.html b/var/www/app/500.html new file mode 100644 index 0000000..ee1d9a8 --- /dev/null +++ b/var/www/app/500.html @@ -0,0 +1,13 @@ + + + + + + NorthServ - 500 Internal Server Error + + +

500 Internal server error

+

Requested url not found

+ Go home + + \ No newline at end of file diff --git a/var/www/app/index.html b/var/www/app/index.html new file mode 100644 index 0000000..ce70aad --- /dev/null +++ b/var/www/app/index.html @@ -0,0 +1,11 @@ + + + + + + NorthServ - Index + + + + + \ No newline at end of file From f8884521ef4eb54b8d973e34442c4fb6de4e8327 Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Mon, 21 Apr 2025 16:46:02 +0100 Subject: [PATCH 04/66] work on the structure --- headers/Response.hpp | 36 +++++++----- headers/ResponseUtils.hpp | 6 +- headers/WebservHandler.hpp | 9 +-- srcs/models/Response.cpp | 96 ++++++++++++++------------------ srcs/models/WebservHandler.cpp | 6 +- srcs/utils/ResponseUtils.cpp | 20 ++++--- var/.in | 0 var/www/.in | 0 var/www/{app => html}/404.html | 0 var/www/{app => html}/500.html | 0 var/www/{app => html}/index.html | 0 11 files changed, 87 insertions(+), 86 deletions(-) create mode 100644 var/.in create mode 100644 var/www/.in rename var/www/{app => html}/404.html (100%) rename var/www/{app => html}/500.html (100%) rename var/www/{app => html}/index.html (100%) diff --git a/headers/Response.hpp b/headers/Response.hpp index 2285761..f231fd9 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,28 +6,40 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/19 11:14:10 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 13:55:05 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ -#ifndef RESPONSE_HPP -# define RESPONSE_HPP +#pragma once # include -# include # include "../learning/request.hpp" # include "./WebservHandler.hpp" # include "./ResponseUtils.hpp" +# include + +enum RESPONSE_CODE { + NOT_FOUND = 404, + MOVED_PERMANENTLY = 301, + METHOD_NOT_ALLOWED = 405, + FORBIDDEN = 403, + OK = 200, + CGI, + CREATED = 201, + CONFLICT = 409, + NOCONTENT = 204, + INTERNAL_SERVER_ERROR = 500 +}; class Response { private: + Response(void); Response(const Response& obj); Response& operator=(const Response& obj); - ~Response(); std::string http_version; - int status_code; + RESPONSE_CODE status_code; std::string status_text; std::map headers; std::string body; @@ -36,16 +48,14 @@ class Response void printResHeaders(void) const; - void handleGet(struct ClientData &client, const Request &req); - void handlePost(struct ClientData &client, const Request &req); - void handleDelete(struct ClientData &client, const Request &req); + void handleGet(struct ClientData &client, Request &req, const std::string &path); + void handlePost(struct ClientData &client, Request &req, const std::string &path); + void handleDelete(struct ClientData &client, Request &req, const std::string &path); int checkRequestedPath(struct ClientData &client, const std::string &req); int checkAllowedMethods(struct ClientData &client, const Request &req); public: - Response(void); - Response(struct ClientData &clientData , const Request &request); + Response(struct ClientData &clientData , Request &request); + ~Response(); std::string combineResponse(); }; - -#endif diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index e8650aa..cfb7f89 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/19 14:04:05 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 14:30:04 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,12 +17,14 @@ # include # include # include -#include +# include +# include class ResponseUtils { public: static std::string getDateTime(); static std::string allowHeaderValue(std::map allowedMethods); static bool pathExists(const std::string& path); + static bool isDirectory(const std::string& path); static int openFile(const std::string& filepath); }; \ No newline at end of file diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 679cb3e..a7f1ec4 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/19 13:54:09 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 10:43:01 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,10 +15,6 @@ # include "FtPars.hpp" # include # include -# include -# include -# include -# include # include # include # include @@ -26,7 +22,6 @@ # include # include # include "debug.hpp" -# include "../learning/request.hpp" # include "./Response.hpp" # define RUNNING 1 @@ -43,6 +38,8 @@ enum requestType { MULTIPART_FORM, }; +class Response; + struct ClientData { Response *response; int fd; diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d2aa7cf..fb17e52 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,41 +6,41 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/19 13:22:27 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 14:55:37 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" Response::Response(void) -{ - headers["Server"] = "NorthServ/1.0"; -} +{} -Response::Response(struct ClientData &client, const Request &req) { - std::string root_path = "/var/www/html"; +Response::Response(struct ClientData &client, Request &req) { + // std::string root_os = "/Users/mboujama/Desktop/webserv"; + std::string root_path = "var/www/html"; std::string full_path = root_path + req.getPath(); http_version = req.getVersion(); - //TODO: add checkRedirect: I need the - if (!checkRequestedPath(client, full_path) || !checkAllowedMethods(client, req)) - return ; - fd = ResponseUtils::openFile(full_path); - if (req.getMethod() == "GET") - handleGet(client, req); - else if (req.getMethod() == "POST") - std::cout << "post" << std::endl; - else if (req.getMethod() == "DELETE") - std::cout << "delete" << std::endl; - - status_code = 200; status_text = "OK"; body = "

All Is Good

"; headers["Server"] = "NorthServ/1.0"; headers["Content-Type"] = "text/html"; headers["Content-Length"] = std::to_string(body.size()); - headers["Connection"] = "close"; + headers["Connection"] = "keep alive"; headers["Date"] = ""; + + //TODO: add checkRedirect: + if (!client.server->getAllowedMethods()[req.getMethod()]) + status_code = METHOD_NOT_ALLOWED; + else if (!ResponseUtils::pathExists(full_path)) + status_code = NOT_FOUND; + else if (req.getMethod() == "GET") + handleGet(client, req, full_path); + else if (req.getMethod() == "POST") + handlePost(client, req, full_path); + else if (req.getMethod() == "DELETE") + handleDelete(client, req, full_path); + std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; } @@ -77,53 +77,41 @@ std::string Response::combineResponse(void) { return res.str(); } -// Check if requested url exists -int Response::checkRequestedPath(struct ClientData &client, const std::string &full_path) { - if (!ResponseUtils::pathExists(full_path)) { - status_code = 404; - status_text = "Not Found"; - body = client.server->getErrorPage404(); - headers["Content-Type"] = "text/html"; - headers["Content-Length"] = std::to_string(body.size()); - headers["Connection"] = "close"; - return 0; +void Response::handleGet(struct ClientData &client, Request &req, const std::string &path) { + // TODO: 1- Check is dir or file + if (ResponseUtils::isDirectory(path)) { + // TODO: 2- if directory + // TODO: 2.1 - if path doesn't end with / add it and redirect to /path/ (301) + std::cout << "this is a directory" << std::endl; + path.at(path.size() - 1); + if (path.at(path.size() - 1) != '/') { + //! Should be fixed: + status_code = MOVED_PERMANENTLY; + headers["Location"] = req.getPath() + "/"; + return ; + } + DIR *opendir(const char *dirname); + // TODO: 2.2 - if index file exists serve it (CGI || 200) + // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) } - return 1; -} - -int Response::checkAllowedMethods(struct ClientData &client, const Request &req) { - if (!client.server->getAllowedMethods()[req.getMethod()]) { - status_code = 405; - status_text = "Method Not Allowed"; - - body = "

405 Not Allowed Method

"; - headers["Content-Type"] = "text/html"; - headers["Content-Length"] = std::to_string(body.size()); - headers["Allow"] = ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()); - headers["Connection"] = "close"; - return 0; + else { + std::cout << "this is a file" << std::endl; + // TODO: 3- if file serve it (CGI || 200) } - return 1; -} - -void Response::handleGet(struct ClientData &client, const Request &req) { - // TODO: 1- 404 not found if the requested path doesn't exist. - // TODO: 2- 301 if the path doesn't have / at the end. - // TODO: 3- In case of directory Serve index.html if exists otherwise serve autoindex if enabled. - // TODO: 4- Serve the requested file. (void) client; (void) req; - std::cout << "get" << std::endl; } -void Response::handlePost(struct ClientData &client, const Request &req) { +void Response::handlePost(struct ClientData &client, Request &req, const std::string &path) { (void) client; (void) req; + (void) path; std::cout << "post" << std::endl; } -void Response::handleDelete(struct ClientData &client, const Request &req) { +void Response::handleDelete(struct ClientData &client, Request &req, const std::string &path) { (void) client; (void) req; + (void) path; std::cout << "delete" << std::endl; } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 60c05db..cabbe0f 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/19 11:28:04 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 12:32:47 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -135,10 +135,10 @@ bool WebservHandler::isRequestValid(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { Request req(client.headers + client.request); - client.response = new Response(client, req); + client.response = new Response(client, req); //! free this std::string res = client.response->combineResponse(); // std::string response = res->handleResponse(client, req); - std::cout << "=======>" << client.response << "<=======" << std::endl; + std::cout << "=======>" << res << "<=======" << std::endl; send(client.fd, res.c_str(), res.size(), 0); } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index bdee660..7a8f0df 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -6,21 +6,22 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/19 14:03:31 by mboujama ### ########.fr */ +/* Updated: 2025/04/21 14:30:36 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" +#include std::string ResponseUtils::getDateTime() { time_t rawtime; struct tm * datetime; - char buffer [80]; + char buffer[80]; - time (&rawtime); + time(&rawtime); datetime = localtime(&rawtime); - strftime (buffer,80,"%a, %d %h %Y %T %Z", datetime); + strftime (buffer, 80, "%a, %d %h %Y %T %Z", datetime); return std::string(buffer); } @@ -40,11 +41,14 @@ std::string ResponseUtils::allowHeaderValue(std::map allowedM } bool ResponseUtils::pathExists(const std::string& path) { - struct stat info; + return access(path.c_str(), F_OK) == 0; +} + +bool ResponseUtils::isDirectory(const std::string& path) { + struct stat info; - if (stat(path.c_str(), &info) != 0) - return 0; - return 1; + stat(path.c_str(), &info); + return S_ISDIR(info.st_mode); } int ResponseUtils::openFile(const std::string& filepath) { diff --git a/var/.in b/var/.in new file mode 100644 index 0000000..e69de29 diff --git a/var/www/.in b/var/www/.in new file mode 100644 index 0000000..e69de29 diff --git a/var/www/app/404.html b/var/www/html/404.html similarity index 100% rename from var/www/app/404.html rename to var/www/html/404.html diff --git a/var/www/app/500.html b/var/www/html/500.html similarity index 100% rename from var/www/app/500.html rename to var/www/html/500.html diff --git a/var/www/app/index.html b/var/www/html/index.html similarity index 100% rename from var/www/app/index.html rename to var/www/html/index.html From cd2b1148b70ee52a5a9ddf94d12c2357413225b0 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 21 Apr 2025 17:45:13 +0100 Subject: [PATCH 05/66] rootPath added --- .gitignore | 5 ++-- configs/config.conf | 1 + headers/Server.hpp | 10 +++++-- labs/create.py | 49 +++++++++++++++++++++++++++++++++ labs/delete.cpp | 49 +++++++++++++++++++++++++++++++++ srcs/models/Server.cpp | 15 ++++++++++ srcs/models/WebservHandler.cpp | 5 ++-- srcs/parsing/helpers/FtPars.cpp | 1 + 8 files changed, 127 insertions(+), 8 deletions(-) create mode 100644 labs/create.py create mode 100644 labs/delete.cpp diff --git a/.gitignore b/.gitignore index b7b66b0..b5af686 100644 --- a/.gitignore +++ b/.gitignore @@ -1,13 +1,12 @@ # Prerequisites *.d - - +labs/myfld/* labs/intern/ - +ts.txt # Compiled Object files *.slo *.lo diff --git a/configs/config.conf b/configs/config.conf index 6b797af..3faa521 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -6,6 +6,7 @@ host = "127.0.0.1" port = "8080,5555" server_name = "myserver.local" client_max_body_size = "1048576" +redirects = "/tasks/index.html,/new/index.html" # Default error pages error_page_404 = "/errors/404.html" diff --git a/headers/Server.hpp b/headers/Server.hpp index 411a22f..1890076 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -25,6 +25,7 @@ #endif #define LISTEN_BACKLOG 12 +#define DEFAULT_ROOT_PATH "./website" typedef unsigned int uint32_t; /// @brief server class that hold data for each website @@ -33,15 +34,16 @@ class Server { std::string host; uint32_t port; std::string serverName; + std::string rootPath; uint32_t limitClientBodySize; std::string errorPage404; std::string errorPage500; std::string uploadsPath; - std::map allowedMethods; + std::map allowedMethods; //? std::map indexes; std::vector ports; - bool enableUploads; - bool autoIndex; + bool enableUploads; //? ! + bool autoIndex; //? int serverSocket; int serverBind; int serverListenFd; @@ -60,6 +62,7 @@ class Server { uint32_t getPort(void) const; std::string getHost(void) const; std::string getserverName(void) const; + std::string getRootPath(void) const; uint32_t getLimitClientBodySize(void) const; std::string getErrorPage404(void) const; std::string getErrorPage500(void) const; @@ -81,6 +84,7 @@ class Server { void setAutoIndex(bool val); void setPorts(uint32_t val); void setEnableUploads(bool val); + void setRootPath(std::string& val); // Server_handlers void initServer(void); }; diff --git a/labs/create.py b/labs/create.py new file mode 100644 index 0000000..11edba0 --- /dev/null +++ b/labs/create.py @@ -0,0 +1,49 @@ +import os +import random + +def create_random_files(base_path, num_files): + """Create a random number of files in the specified directory.""" + for i in range(num_files): + file_name = f"file_{i+1}.txt" + file_path = os.path.join(base_path, file_name) + with open(file_path, 'w') as f: + f.write(f"This is the content of {file_name}") + +def create_nested_structure(base_path, depth, max_folders, max_files): + """Recursively create nested folders and files.""" + if depth <= 0: + return + + # Create a random number of files in the current directory + num_files = random.randint(1, max_files) + create_random_files(base_path, num_files) + + # Create a random number of subfolders in the current directory + num_folders = random.randint(1, max_folders) + for i in range(num_folders): + folder_name = f"folder_{i+1}" + folder_path = os.path.join(base_path, folder_name) + os.makedirs(folder_path, exist_ok=True) + + # Recursively create nested structure inside the subfolder + create_nested_structure(folder_path, depth - 1, max_folders, max_files) + +def main(): + # Define the base folder name + base_folder = "myfld" + + # Create the base folder + os.makedirs(base_folder, exist_ok=True) + + # Define parameters for the nested structure + max_depth = 3 # Maximum depth of nested folders + max_folders_per_level = 3 # Maximum number of folders per level + max_files_per_level = 5 # Maximum number of files per level + + # Generate the nested folder and file structure + create_nested_structure(base_folder, max_depth, max_folders_per_level, max_files_per_level) + + print(f"Folder structure created successfully in '{base_folder}'.") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/labs/delete.cpp b/labs/delete.cpp new file mode 100644 index 0000000..14ddf75 --- /dev/null +++ b/labs/delete.cpp @@ -0,0 +1,49 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* delete.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/04/20 16:18:20 by ochouati #+# #+# */ +/* Updated: 2025/04/20 16:46:30 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include +#include + +void deleteFile(const std::string& path) +{ + if (remove(path.c_str()) != 0) + std::cerr << "Error deleting file: " << path << std::endl; +} + +void deleteFolder(const std::string& path) +{ + DIR* dir = opendir(path.c_str()); + + if (!dir) + { + std::cerr << "Error opening directory: " << path << std::endl; + return; + } + struct dirent* entry; + while ((entry = readdir(dir)) != NULL) + { + if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") + continue; + std::string filePath = path + "/" + entry->d_name; + if (entry->d_type == DT_DIR) + deleteFolder(filePath); + else + deleteFile(filePath); + } + closedir(dir); + if (remove(path.c_str()) != 0) + std::cerr << "Error deleting directory: " << path << std::endl; +} + +int main() { + deleteFolder("./myfld"); +} diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 3898f45..08977ee 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -21,6 +21,7 @@ Server::Server(void)//! why ? this->serverName = "127.0.0.1"; this->serverBind = -1; this->serverSocket = -1; + this->rootPath = DEFAULT_ROOT_PATH; } Server::~Server(void) @@ -102,6 +103,10 @@ static void fillServerData(std::string& line, Server& srv) { } else if (!line.compare(0, 14, "upload_enabled")) { validateAndTrim(str); FtPars::enableUploadsHandler(srv, str); + } else if (!line.compare(0, 13, "location_root")) + { + validateAndTrim(str); + srv.setRootPath(str); } } @@ -146,6 +151,11 @@ std::string Server::getserverName(void) const return (this->serverName); } +std::string Server::getRootPath(void) const +{ + return (this->rootPath); +} + uint32_t Server::getLimitClientBodySize(void) const { return (this->limitClientBodySize); @@ -244,6 +254,11 @@ void Server::setEnableUploads(bool val) this->enableUploads = val; } +void Server::setRootPath(std::string& val) +{ + this->rootPath = val; +} + // INET FUNCTIONS void Server::initServer(void) diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index d19ede0..c4a569d 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,13 +6,14 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/10 16:08:54 by ochouati ### ########.fr */ +/* Updated: 2025/04/20 16:04:02 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/WebservHandler.hpp" #include #include +#include WebservHandler::WebservHandler() { } @@ -141,5 +142,5 @@ void WebservHandler::handleRequest(ClientData& client) "\r\n" + exampleHtml; printWarning("handleRequest...."); std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; - send(client.fd, response.c_str(), response.size(), 0); + send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) } diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index d0c7246..0a1bbbd 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -221,4 +221,5 @@ namespace FtPars { ss << nbr; return (ss.str()); } + } From 16b7341a2754a4973c718caecaaef4cb44b2e0fb Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Tue, 22 Apr 2025 14:47:55 +0100 Subject: [PATCH 06/66] solve redirect issue --- .gitignore | 2 + learning/request.cpp | 3 ++ learning/request.hpp | 1 + req.rest | 4 +- srcs/models/Response.cpp | 99 +++++++++++++++++++++------------- srcs/models/WebservHandler.cpp | 7 ++- srcs/utils/ResponseUtils.cpp | 7 +-- var/www/html/file.txt | 1 + 8 files changed, 79 insertions(+), 45 deletions(-) create mode 100644 var/www/html/file.txt diff --git a/.gitignore b/.gitignore index b7b66b0..50b6585 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,5 @@ testing/ *.exe *.out *.app + +test* \ No newline at end of file diff --git a/learning/request.cpp b/learning/request.cpp index 716c940..169a43c 100644 --- a/learning/request.cpp +++ b/learning/request.cpp @@ -144,5 +144,8 @@ size_t Request::getEnvSize(void) const return vEnv.size(); } +void Request::setPath(std::string &newPath) { + path = newPath; +} Request::~Request() {} diff --git a/learning/request.hpp b/learning/request.hpp index 7e28a80..a32323b 100644 --- a/learning/request.hpp +++ b/learning/request.hpp @@ -26,6 +26,7 @@ class Request { std::string getQuery() const; size_t getQuerySize(void) const; std::string getBody(void) const; + void setPath(std::string &newPath); void convertToEnv(void); // std::pair getHeader(size_t index) const; void printHeaders(void) const; diff --git a/req.rest b/req.rest index e162ca4..c92490f 100644 --- a/req.rest +++ b/req.rest @@ -1,6 +1,6 @@ #GET, POST, DELETE -PUT http://127.0.0.1:8080 HTTP/1.1 -Content-Type: "text/html" +GET http://127.0.0.1:8080/test HTTP/1.1 +Connection: "keep-alive" ### diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index fb17e52..8987584 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,47 +3,20 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/21 14:55:37 by mboujama ### ########.fr */ +/* Updated: 2025/04/22 14:45:57 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" +#include +#include Response::Response(void) {} -Response::Response(struct ClientData &client, Request &req) { - // std::string root_os = "/Users/mboujama/Desktop/webserv"; - std::string root_path = "var/www/html"; - std::string full_path = root_path + req.getPath(); - http_version = req.getVersion(); - - status_text = "OK"; - body = "

All Is Good

"; - headers["Server"] = "NorthServ/1.0"; - headers["Content-Type"] = "text/html"; - headers["Content-Length"] = std::to_string(body.size()); - headers["Connection"] = "keep alive"; - headers["Date"] = ""; - - //TODO: add checkRedirect: - if (!client.server->getAllowedMethods()[req.getMethod()]) - status_code = METHOD_NOT_ALLOWED; - else if (!ResponseUtils::pathExists(full_path)) - status_code = NOT_FOUND; - else if (req.getMethod() == "GET") - handleGet(client, req, full_path); - else if (req.getMethod() == "POST") - handlePost(client, req, full_path); - else if (req.getMethod() == "DELETE") - handleDelete(client, req, full_path); - - std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; -} - Response::~Response(void) {} @@ -77,21 +50,75 @@ std::string Response::combineResponse(void) { return res.str(); } +Response::Response(struct ClientData &client, Request &req) { + std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; + std::string full_path = root_path + req.getPath(); + http_version = req.getVersion(); + + status_text = "OK"; + body = "

All Is Good

"; + headers["Content-Length"] = std::to_string(body.size()); + headers["Server"] = "NorthServ/1.0"; + headers["Content-Type"] = "text/html"; + headers["Connection"] = "keep-alive"; + headers["Date"] = ResponseUtils::getDateTime(); + + //TODO: add checkRedirect: + if (!client.server->getAllowedMethods()[req.getMethod()]) + status_code = METHOD_NOT_ALLOWED; + else if (!ResponseUtils::pathExists(full_path)) + status_code = NOT_FOUND; + else if (req.getMethod() == "GET") + handleGet(client, req, full_path); + else if (req.getMethod() == "POST") + handlePost(client, req, full_path); + else if (req.getMethod() == "DELETE") + handleDelete(client, req, full_path); + + switch (status_code) { + case NOT_FOUND: + std::cout << "NOT FOUND" << std::endl; + body = "

404 Not Found

"; + headers["Content-Length"] = std::to_string(body.size()); + break ; + case METHOD_NOT_ALLOWED: + std::cout << "METHOD NOT ALLOWED" << std::endl; + body = "

405 Method Not Allowed

"; + headers["Content-Length"] = std::to_string(body.size()); + break ; + case MOVED_PERMANENTLY: + std::cout << "MOVED PERMANENTLY" << std::endl; + body = "

301 Moved Permanently

"; + headers["Content-Length"] = std::to_string(body.size()); + break ; + default: + std::cout << "OK" << std::endl; + body = "

All is good

"; + headers["Content-Length"] = std::to_string(body.size()); + status_code = OK; + } + + std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; +} + void Response::handleGet(struct ClientData &client, Request &req, const std::string &path) { // TODO: 1- Check is dir or file if (ResponseUtils::isDirectory(path)) { // TODO: 2- if directory - // TODO: 2.1 - if path doesn't end with / add it and redirect to /path/ (301) + // TODO: 2.1 - if path doesn't end with /, add it and redirect to /path/ (301) std::cout << "this is a directory" << std::endl; - path.at(path.size() - 1); - if (path.at(path.size() - 1) != '/') { - //! Should be fixed: + if (path.at(path.length() - 1) != '/') { status_code = MOVED_PERMANENTLY; headers["Location"] = req.getPath() + "/"; return ; } - DIR *opendir(const char *dirname); // TODO: 2.2 - if index file exists serve it (CGI || 200) + if (true) { + std::cout << "" << std::endl; + } + else { + status_code = FORBIDDEN; + } // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) } else { diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index cabbe0f..669a7a4 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* WebservHandler.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/21 12:32:47 by mboujama ### ########.fr */ +/* Updated: 2025/04/22 11:37:23 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -138,7 +138,6 @@ void WebservHandler::handleRequest(ClientData& client) client.response = new Response(client, req); //! free this std::string res = client.response->combineResponse(); - // std::string response = res->handleResponse(client, req); - std::cout << "=======>" << res << "<=======" << std::endl; + std::cout << "=======>\n" << res << "\n<=======" << std::endl; send(client.fd, res.c_str(), res.size(), 0); } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index 7a8f0df..cfd08bc 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* ResponseUtils.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/21 14:30:36 by mboujama ### ########.fr */ +/* Updated: 2025/04/22 11:34:46 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -21,7 +21,7 @@ std::string ResponseUtils::getDateTime() { time(&rawtime); datetime = localtime(&rawtime); - strftime (buffer, 80, "%a, %d %h %Y %T %Z", datetime); + strftime (buffer, 80, "%a, %d %h %Y %T", datetime); return std::string(buffer); } @@ -41,6 +41,7 @@ std::string ResponseUtils::allowHeaderValue(std::map allowedM } bool ResponseUtils::pathExists(const std::string& path) { + std::cout << "Path to search: " << path << std::endl; return access(path.c_str(), F_OK) == 0; } diff --git a/var/www/html/file.txt b/var/www/html/file.txt new file mode 100644 index 0000000..95d09f2 --- /dev/null +++ b/var/www/html/file.txt @@ -0,0 +1 @@ +hello world \ No newline at end of file From 12a100a827f3aba0247fa8c0c1e0e5589c3d9c3a Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Tue, 22 Apr 2025 20:56:18 +0100 Subject: [PATCH 07/66] ::setBoundary added --- configs/config.conf | 1 + headers/WebservHandler.hpp | 12 ++++--- srcs/models/Webserv.cpp | 20 +---------- srcs/models/WebservHandler.cpp | 45 ++++++++++++++++++----- websites/upload/index.html | 66 ++++++++++++++++++++++++++++++++++ 5 files changed, 113 insertions(+), 31 deletions(-) create mode 100644 websites/upload/index.html diff --git a/configs/config.conf b/configs/config.conf index 3faa521..f977f6b 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -28,6 +28,7 @@ location3_path = "./scripts/php/" location3_root = "/var/www/cgi-bin" location3_cgi_enable = ".php,.py" location3_cgi_path_info = "on" +cgi = "/usr/bin/php-cgi,.py" ############################################################################### diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index c273309..adc1101 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/10 15:20:02 by ochouati ### ########.fr */ +/* Updated: 2025/04/22 20:28:22 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -30,7 +30,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 20 +# define READ_SIZE 40960 # define CHUNCK_SIZE 4096 enum requestType { @@ -47,13 +47,16 @@ struct ClientData { bool isRequestComplete; size_t bytesSent; long contentLen; - size_t readed; + size_t readed; //! why ? bool isHeaderComplete; int file; //! std::string request; Server *server; std::string headers; - ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL) {} + size_t bodyReded; + std::string boundary; + //! add map + ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL), bodyReded(0) {} }; class WebservHandler @@ -70,6 +73,7 @@ class WebservHandler bool isRequestValid(ClientData& client); void handleRequest(ClientData& client); void _closeClient(int fd); + void setBoundary(ClientData& client); public: WebservHandler(); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 91215cb..d75e5ae 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/04/10 14:16:13 by ochouati ### ########.fr */ +/* Updated: 2025/04/22 15:03:58 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -20,24 +20,6 @@ Webserv::~Webserv() { } - -// void Webserv::_closeClient(int fd) -// { -// std::cout << COL_YELLOW << "Closing client fd: " << fd << END_COL << std::endl; -// // remove from pollfds -// for (size_t i = 0; i < _pollfds.size(); ++i) { -// if (_pollfds[i].fd == fd) { -// close(fd); -// std::vector::iterator tmp = _pollfds.begin() + i; -// std::cout << "Removing fd: " << tmp->fd << std::endl; -// _pollfds.erase(tmp); -// _requests.erase(fd); -// break; -// } -// } -// // remove from requests -// } - Webserv::Webserv(readConfig& config, char **env) { if (!env || !*env) diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index c4a569d..4336037 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,13 +6,16 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/20 16:04:02 by ochouati ### ########.fr */ +/* Updated: 2025/04/22 20:28:49 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/WebservHandler.hpp" #include +#include +#include #include +#include #include WebservHandler::WebservHandler() { @@ -43,12 +46,12 @@ void WebservHandler::setRequestType(ClientData& client) printWarning("setRequestType...."); if (client.headers.empty()) return; - if (client.headers.find("Content-Length:") != std::string::npos) + if (client.headers.find("Content-Type: multipart/form-data") != std::string::npos) + client.type = MULTIPART_FORM; + else if (client.headers.find("Content-Length:") != std::string::npos) client.type = CONTENT_LENGTH; else if (client.headers.find("Transfer-Encoding: chunked\r\n") != std::string::npos) client.type = CHUNKED; - else if (client.headers.find("Content-Type: multipart/form-data\r\n") != std::string::npos) - client.type = MULTIPART_FORM; else client.type = NO_CONTENT; std::cout << "=> Request type: " ; printRequestType(client.type); @@ -69,7 +72,7 @@ void WebservHandler::setContentLength(ClientData& client) std::cout << "=> Content-Length: " << client.contentLen << std::endl; } -bool WebservHandler::isChunkedComplete(ClientData& client) +bool WebservHandler::isChunkedComplete(ClientData& client) //! will be cancelled { printWarning("isChunkedComplete...."); if (client.type != CHUNKED) @@ -89,7 +92,6 @@ bool WebservHandler::isChunkedComplete(ClientData& client) return false; } - bool WebservHandler::isHeaderComplete(ClientData& client) { printWarning("isHeaderComplete...."); @@ -101,7 +103,10 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.isHeaderComplete = true; client.headers = client.request.substr(0, pos + 4); //! should stop at pos or pos + 4 client.request = client.request.substr(pos + 4); - std::cout << "Header complete: \n" << client.headers << std::endl; + std::cout << "Header complete: \n" << client.headers << std::endl; //! remove this + this->setBoundary(client); + client.bodyReded = client.request.size(); + std::cout << "Body readed: " << client.bodyReded << std::endl; return (true); } return (false); @@ -112,10 +117,16 @@ bool WebservHandler::isRequestComplete(ClientData& client) printWarning("isRequestComplete...."); if (!client.isHeaderComplete) return (false); - else if (client.type == CHUNKED) + else if (client.type == CHUNKED) //! no longer return (isChunkedComplete(client)); else if (client.type == NO_CONTENT && client.contentLen == -1) return (true); + else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) + { + std::cout << COL_RED << "client.contentLen: " << client.contentLen << " client.bodyReded: " << client.bodyReded << END_COL << std::endl; + std::cout << "Multipart form data complete" << std::endl; + return (true); + } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) return (true); std::cout << "Request not complete" << std::endl; @@ -133,6 +144,21 @@ bool WebservHandler::isRequestValid(ClientData& client) return (true); } +void WebservHandler::setBoundary(ClientData& client) +{ + if (!client.isHeaderComplete || client.type != MULTIPART_FORM || !client.boundary.empty()) + return; + size_t pos = client.headers.find("boundary="); + if (pos == std::string::npos) + return; + size_t start = client.headers.find("=", pos) + 1; + size_t end = client.headers.find("\r\n", start); + if (end == std::string::npos) + return; + client.boundary = client.headers.substr(start, end - start); + std::cout << "Boundary: " << client.boundary << std::endl; +} + void WebservHandler::handleRequest(ClientData& client) { std::string exampleHtml = "

Welcome to 1337 Webserv

"; @@ -141,6 +167,9 @@ void WebservHandler::handleRequest(ClientData& client) "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" "\r\n" + exampleHtml; printWarning("handleRequest...."); + std::ofstream logFile("request.log", std::ios::app); + if (logFile.is_open()) + logFile << client.request << std::endl; std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) } diff --git a/websites/upload/index.html b/websites/upload/index.html new file mode 100644 index 0000000..659e8b3 --- /dev/null +++ b/websites/upload/index.html @@ -0,0 +1,66 @@ + + + + + + Document + + + +
+
+ + +
+
+ + + \ No newline at end of file From 60bbd46720705b1188b599bd64a7240a79b62360 Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Wed, 23 Apr 2025 15:49:12 +0100 Subject: [PATCH 08/66] open index files and get mimetypes --- Makefile | 2 +- headers/MimeTypes.hpp | 5 +- headers/Response.hpp | 34 +++++------ headers/ResponseUtils.hpp | 22 ++++++- srcs/models/MimeTypes.cpp | 9 ++- srcs/models/Response.cpp | 93 ++++++++++++++++-------------- srcs/utils/ResponseUtils.cpp | 63 +++++++++++++++++++- var/www/html/errors/403.html | 13 +++++ var/www/html/{ => errors}/404.html | 6 +- var/www/html/errors/405.html | 13 +++++ var/www/html/{ => errors}/500.html | 6 +- var/www/html/folder/index.html | 11 ++++ var/www/html/folder/script.js | 1 + var/www/html/folder/style.css | 0 14 files changed, 201 insertions(+), 77 deletions(-) create mode 100644 var/www/html/errors/403.html rename var/www/html/{ => errors}/404.html (69%) create mode 100644 var/www/html/errors/405.html rename var/www/html/{ => errors}/500.html (69%) create mode 100644 var/www/html/folder/index.html create mode 100644 var/www/html/folder/script.js create mode 100644 var/www/html/folder/style.css diff --git a/Makefile b/Makefile index 333167d..f46423e 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp SRCS += learning/request.cpp # MOAD -SRCS += srcs/models/Response.cpp srcs/utils/ResponseUtils.cpp +SRCS += srcs/models/Response.cpp srcs/utils/ResponseUtils.cpp srcs/models/MimeTypes.cpp #OTM SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp diff --git a/headers/MimeTypes.hpp b/headers/MimeTypes.hpp index ef8a231..ea8f302 100644 --- a/headers/MimeTypes.hpp +++ b/headers/MimeTypes.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* MimeTypes.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/25 16:35:38 by ochouati #+# #+# */ -/* Updated: 2025/03/25 16:49:50 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 14:40:43 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -21,5 +21,6 @@ class MimeTypes { public: MimeTypes(); ~MimeTypes(); + std::string getMimeType(std::string filepath); }; diff --git a/headers/Response.hpp b/headers/Response.hpp index f231fd9..c8773de 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/21 13:55:05 by mboujama ### ########.fr */ +/* Updated: 2025/04/23 14:50:21 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -16,22 +16,19 @@ # include "../learning/request.hpp" # include "./WebservHandler.hpp" # include "./ResponseUtils.hpp" +# include "./MimeTypes.hpp" # include +#include +#include +#include +#include +#include +#include +#include +#include +#include -enum RESPONSE_CODE { - NOT_FOUND = 404, - MOVED_PERMANENTLY = 301, - METHOD_NOT_ALLOWED = 405, - FORBIDDEN = 403, - OK = 200, - CGI, - CREATED = 201, - CONFLICT = 409, - NOCONTENT = 204, - INTERNAL_SERVER_ERROR = 500 -}; - -class Response +class Response : public MimeTypes { private: Response(void); @@ -45,9 +42,8 @@ class Response std::string body; std::string date; int fd; - - void printResHeaders(void) const; - + + int getFd() const; void handleGet(struct ClientData &client, Request &req, const std::string &path); void handlePost(struct ClientData &client, Request &req, const std::string &path); void handleDelete(struct ClientData &client, Request &req, const std::string &path); diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index cfb7f89..b46d268 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* ResponseUtils.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/21 14:30:04 by mboujama ### ########.fr */ +/* Updated: 2025/04/23 13:56:53 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -19,6 +19,20 @@ # include # include # include +# include + +enum RESPONSE_CODE { + NOT_FOUND = 404, + MOVED_PERMANENTLY = 301, + METHOD_NOT_ALLOWED = 405, + FORBIDDEN = 403, + OK = 200, + CGI, + CREATED = 201, + CONFLICT = 409, + NOCONTENT = 204, + INTERNAL_SERVER_ERROR = 500 +}; class ResponseUtils { public: @@ -27,4 +41,8 @@ class ResponseUtils { static bool pathExists(const std::string& path); static bool isDirectory(const std::string& path); static int openFile(const std::string& filepath); + static std::string toString(long value); + static std::string isIndexFileExist(std::map &indexes, const std::string &path); + static std::string getErrorPage(RESPONSE_CODE status); + static std::string getMimeType(std::string filepath); }; \ No newline at end of file diff --git a/srcs/models/MimeTypes.cpp b/srcs/models/MimeTypes.cpp index f04005a..92757b9 100644 --- a/srcs/models/MimeTypes.cpp +++ b/srcs/models/MimeTypes.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* MimeTypes.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/25 16:47:27 by ochouati #+# #+# */ -/* Updated: 2025/03/25 16:49:37 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 14:42:30 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -30,5 +30,8 @@ MimeTypes::MimeTypes() } MimeTypes::~MimeTypes() -{ +{} + +std::string MimeTypes::getMimeType(std::string filepath) { + return types[filepath.substr(filepath.find_last_of('.'))]; } \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 8987584..6e0998b 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,22 +6,18 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/22 14:45:57 by mboujama ### ########.fr */ +/* Updated: 2025/04/23 14:50:28 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" -#include -#include -Response::Response(void) -{} -Response::~Response(void) -{} +Response::Response(void) {} -Response::Response(const Response& obj) -{ +Response::~Response(void) {} + +Response::Response(const Response& obj){ *this = obj; } @@ -31,11 +27,8 @@ Response& Response::operator=(const Response& obj) return (*this); } -void Response::printResHeaders(void) const -{ - std::map::const_iterator it; - for (it = this->headers.begin(); it != this->headers.end(); ++it) - std::cout << it->first << ": " << it->second << std::endl; +int Response::getFd() const { + return fd; } std::string Response::combineResponse(void) { @@ -55,16 +48,15 @@ Response::Response(struct ClientData &client, Request &req) { std::string full_path = root_path + req.getPath(); http_version = req.getVersion(); - status_text = "OK"; - body = "

All Is Good

"; - headers["Content-Length"] = std::to_string(body.size()); headers["Server"] = "NorthServ/1.0"; headers["Content-Type"] = "text/html"; headers["Connection"] = "keep-alive"; headers["Date"] = ResponseUtils::getDateTime(); //TODO: add checkRedirect: - if (!client.server->getAllowedMethods()[req.getMethod()]) + if (full_path.find("..") != std::string::npos) + status_code = FORBIDDEN; + else if (!client.server->getAllowedMethods()[req.getMethod()]) status_code = METHOD_NOT_ALLOWED; else if (!ResponseUtils::pathExists(full_path)) status_code = NOT_FOUND; @@ -76,57 +68,74 @@ Response::Response(struct ClientData &client, Request &req) { handleDelete(client, req, full_path); switch (status_code) { - case NOT_FOUND: - std::cout << "NOT FOUND" << std::endl; - body = "

404 Not Found

"; - headers["Content-Length"] = std::to_string(body.size()); - break ; - case METHOD_NOT_ALLOWED: - std::cout << "METHOD NOT ALLOWED" << std::endl; - body = "

405 Method Not Allowed

"; - headers["Content-Length"] = std::to_string(body.size()); - break ; + // 30x case MOVED_PERMANENTLY: std::cout << "MOVED PERMANENTLY" << std::endl; body = "

301 Moved Permanently

"; - headers["Content-Length"] = std::to_string(body.size()); + headers["Content-Length"] = ResponseUtils::toString(body.length()); + break ; + // 40x + case FORBIDDEN: + std::cout << "FORBIDDEN" << std::endl; + body = ResponseUtils::getErrorPage(FORBIDDEN); + headers["Content-Length"] = ResponseUtils::toString(body.length()); + break ; + case NOT_FOUND: + body = ResponseUtils::getErrorPage(NOT_FOUND); + headers["Content-Length"] = ResponseUtils::toString(body.length()); + break ; + case METHOD_NOT_ALLOWED: + body = ResponseUtils::getErrorPage(METHOD_NOT_ALLOWED); + headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; default: - std::cout << "OK" << std::endl; + status_code = OK; + status_text = "OK"; body = "

All is good

"; - headers["Content-Length"] = std::to_string(body.size()); + headers["Content-Length"] = ResponseUtils::toString(body.length()); status_code = OK; } std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; } + void Response::handleGet(struct ClientData &client, Request &req, const std::string &path) { - // TODO: 1- Check is dir or file + if (path.find("..") != std::string::npos) { + status_code = FORBIDDEN; return; + } if (ResponseUtils::isDirectory(path)) { - // TODO: 2- if directory - // TODO: 2.1 - if path doesn't end with /, add it and redirect to /path/ (301) - std::cout << "this is a directory" << std::endl; if (path.at(path.length() - 1) != '/') { status_code = MOVED_PERMANENTLY; headers["Location"] = req.getPath() + "/"; return ; } - // TODO: 2.2 - if index file exists serve it (CGI || 200) - if (true) { - std::cout << "" << std::endl; + + std::map indexes = client.server->getIndexes(); + std::string index = ResponseUtils::isIndexFileExist(indexes, path); + + if (!index.empty()) { + fd = ResponseUtils::openFile(path + index); + fd == -1 ? status_code = FORBIDDEN : status_code = OK; + return ; + } + // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) + else if (client.server->getAutoIndex()) { + std::cout << "Autoindex enabled" << std::endl; + status_code = OK; } else { + std::cout << "Autoindex disabled" << std::endl; status_code = FORBIDDEN; } - // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) } else { - std::cout << "this is a file" << std::endl; + std::string mimeType = getMimeType(path); + + std::cout << "Extension: " << mimeType << std::endl; // TODO: 3- if file serve it (CGI || 200) + std::cout << "this is a file" << std::endl; } - (void) client; - (void) req; } void Response::handlePost(struct ClientData &client, Request &req, const std::string &path) { diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index cfd08bc..fa3d450 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -6,11 +6,13 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/22 11:34:46 by mboujama ### ########.fr */ +/* Updated: 2025/04/23 14:40:16 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" +#include +#include #include std::string ResponseUtils::getDateTime() { @@ -57,4 +59,61 @@ int ResponseUtils::openFile(const std::string& filepath) { // ? What is the file didn't open ? return fd; -} \ No newline at end of file +} + +std::string ResponseUtils::toString(long value) { + std::ostringstream oss; + oss << value; + return oss.str(); +} + +std::string ResponseUtils::isIndexFileExist(std::map &indexes, const std::string &path) { + DIR *dir; + struct dirent *ent; + std::map::iterator it; + + dir = opendir(path.c_str()); + while ((ent = readdir(dir))) { + if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) + continue ; + if ((it = indexes.find(ent->d_name)) != indexes.end()) + return it->first; + } + return ""; +} + +std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { + std::string content; + std::string errorsPath = "/Users/mboujama/Desktop/webserv/var/www/html/errors/"; + + std::ifstream file; + switch (status) { + case FORBIDDEN: + file.open(errorsPath + "403.html"); + break; + case NOT_FOUND: + file.open(errorsPath + "404.html"); + break; + case METHOD_NOT_ALLOWED: + file.open(errorsPath + "405.html"); + break; + case INTERNAL_SERVER_ERROR: + file.open(errorsPath + "500.html"); + break; + default: + content = "Under control"; + } + + if (file.is_open()) { + std::string line; + + while (file) { + std::getline(file, line); + content.append(line); + } + } + else + std::cout << "File doesn't opened" << std::endl; + + return content; +} diff --git a/var/www/html/errors/403.html b/var/www/html/errors/403.html new file mode 100644 index 0000000..c03bea6 --- /dev/null +++ b/var/www/html/errors/403.html @@ -0,0 +1,13 @@ + + + + + + NorthServ - 403 Forbidden + + +
+

403 Forbidden

+
+ + \ No newline at end of file diff --git a/var/www/html/404.html b/var/www/html/errors/404.html similarity index 69% rename from var/www/html/404.html rename to var/www/html/errors/404.html index 04f7d53..37274b5 100644 --- a/var/www/html/404.html +++ b/var/www/html/errors/404.html @@ -6,8 +6,8 @@ NorthServ - 404 Not Found -

404 Not Found

-

Requested resource not found

- Go home +
+

404 Not Found

+
\ No newline at end of file diff --git a/var/www/html/errors/405.html b/var/www/html/errors/405.html new file mode 100644 index 0000000..6170fc8 --- /dev/null +++ b/var/www/html/errors/405.html @@ -0,0 +1,13 @@ + + + + + + NorthServ - 405 Method Not Allowed + + +
+

405 Method Not Allowed

+
+ + \ No newline at end of file diff --git a/var/www/html/500.html b/var/www/html/errors/500.html similarity index 69% rename from var/www/html/500.html rename to var/www/html/errors/500.html index ee1d9a8..fd1e93e 100644 --- a/var/www/html/500.html +++ b/var/www/html/errors/500.html @@ -6,8 +6,8 @@ NorthServ - 500 Internal Server Error -

500 Internal server error

-

Requested url not found

- Go home +
+

500 Internal Server Error

+
\ No newline at end of file diff --git a/var/www/html/folder/index.html b/var/www/html/folder/index.html new file mode 100644 index 0000000..d01f779 --- /dev/null +++ b/var/www/html/folder/index.html @@ -0,0 +1,11 @@ + + + + + + Document + + + + + \ No newline at end of file diff --git a/var/www/html/folder/script.js b/var/www/html/folder/script.js new file mode 100644 index 0000000..635625a --- /dev/null +++ b/var/www/html/folder/script.js @@ -0,0 +1 @@ +console.log("Hello world!"); \ No newline at end of file diff --git a/var/www/html/folder/style.css b/var/www/html/folder/style.css new file mode 100644 index 0000000..e69de29 From 3861eafe1eb30d665851ea23edc3cfa34716df9d Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 23 Apr 2025 20:41:01 +0100 Subject: [PATCH 09/66] Content-Lenght::Bad request --- .gitignore | 4 +- configs/config.conf | 7 +- headers/FtPars.hpp | 3 +- headers/Server.hpp | 48 ++++++----- headers/WebservHandler.hpp | 9 +- labs/delete.cpp | 6 +- srcs/models/Server.cpp | 34 ++++++-- srcs/models/Webserv.cpp | 19 ++++- srcs/models/WebservHandler.cpp | 31 +++++-- srcs/parsing/helpers/FtPars.cpp | 27 ++++++ test/runner.go | 145 ++++++++++++++++++++++++++++++++ websites/upload/index.html | 4 +- 12 files changed, 283 insertions(+), 54 deletions(-) create mode 100644 test/runner.go diff --git a/.gitignore b/.gitignore index b5af686..0badff8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,7 @@ labs/myfld/* - +test/runner labs/intern/ ts.txt @@ -43,3 +43,5 @@ testing/ *.exe *.out *.app +.DS_Store + diff --git a/configs/config.conf b/configs/config.conf index f977f6b..bb51c18 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,21 +5,18 @@ host = "127.0.0.1" port = "8080,5555" server_name = "myserver.local" -client_max_body_size = "1048576" -redirects = "/tasks/index.html,/new/index.html" +client_max_body_size = "4000" +redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # Default error pages error_page_404 = "/errors/404.html" error_page_500 = "/errors/500.html" # Route 1 (for path "/") -# location_path = "/" //! location_root = "/var/www/html" -# location_redirect = "/xyz/index.html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "off" -# upload_enabled = "on" upload_store = "/var/www/uploads" diff --git a/headers/FtPars.hpp b/headers/FtPars.hpp index a3977da..7c12089 100644 --- a/headers/FtPars.hpp +++ b/headers/FtPars.hpp @@ -52,5 +52,6 @@ namespace FtPars { bool isNumbersOnly(const std::string& str); void enableUploadsHandler(Server& server, std::string& line); std::string toString(size_t nbr); - size_t hexaToNbr(std::string& str); + void handleRedirects(Server& server, std::string& line); + size_t hexaToNbr(std::string& str); //! not created yet } diff --git a/headers/Server.hpp b/headers/Server.hpp index 1890076..fa2ec4a 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -13,6 +13,7 @@ #pragma once # include # include +#include # include # include # include @@ -21,36 +22,37 @@ # include "FtPars.hpp" #ifndef SO_NOSIGPIPE -#define SO_NOSIGPIPE 0x1022 +#define SO_NOSIGPIPE 0x1022 #endif -#define LISTEN_BACKLOG 12 +#define LISTEN_BACKLOG 12 //! should we increase this ? #define DEFAULT_ROOT_PATH "./website" typedef unsigned int uint32_t; /// @brief server class that hold data for each website class Server { private: - std::string host; - uint32_t port; - std::string serverName; - std::string rootPath; - uint32_t limitClientBodySize; - std::string errorPage404; - std::string errorPage500; - std::string uploadsPath; - std::map allowedMethods; //? - std::map indexes; - std::vector ports; - bool enableUploads; //? ! - bool autoIndex; //? - int serverSocket; - int serverBind; - int serverListenFd; - void ftSocket(void); - void ftBind(void); - void ftListen(void); - void setSocketOptions(void); + std::string host; + uint32_t port; + std::string serverName; + std::string rootPath; + uint32_t limitClientBodySize; + std::string errorPage404; + std::string errorPage500; + std::string uploadsPath; + std::map allowedMethods; //? + std::map indexes; + std::map redirects; + std::vector ports; + bool enableUploads; //? ! + bool autoIndex; //? + int serverSocket; + int serverBind; + int serverListenFd; + void ftSocket(void); + void ftBind(void); + void ftListen(void); + void setSocketOptions(void); public: Server(const Server& srv, uint32_t port); @@ -72,6 +74,7 @@ class Server { const std::vector& getPorts(void) const; bool getEnableUploads(void) const; int getSocket() const; + const std::map& getRedirects(void) const; // Setters void setPort(uint32_t val); void setHost(std::string& val); @@ -85,6 +88,7 @@ class Server { void setPorts(uint32_t val); void setEnableUploads(bool val); void setRootPath(std::string& val); + void setRedirects(const std::string& key, const std::string& val); // Server_handlers void initServer(void); }; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index adc1101..2917a74 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/22 20:28:22 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 20:11:03 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -30,7 +30,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 40960 +# define READ_SIZE 4096 # define CHUNCK_SIZE 4096 enum requestType { @@ -53,10 +53,10 @@ struct ClientData { std::string request; Server *server; std::string headers; - size_t bodyReded; + long bodyReded; std::string boundary; //! add map - ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL), bodyReded(0) {} + ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL), bodyReded(-1) {} }; class WebservHandler @@ -77,6 +77,7 @@ class WebservHandler public: WebservHandler(); + static int requestCount; ~WebservHandler(); }; diff --git a/labs/delete.cpp b/labs/delete.cpp index 14ddf75..42f504f 100644 --- a/labs/delete.cpp +++ b/labs/delete.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/20 16:18:20 by ochouati #+# #+# */ -/* Updated: 2025/04/20 16:46:30 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 13:01:56 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,7 +15,7 @@ void deleteFile(const std::string& path) { - if (remove(path.c_str()) != 0) + if (std::remove(path.c_str()) != 0) std::cerr << "Error deleting file: " << path << std::endl; } @@ -40,7 +40,7 @@ void deleteFolder(const std::string& path) deleteFile(filePath); } closedir(dir); - if (remove(path.c_str()) != 0) + if (std::remove(path.c_str()) != 0) std::cerr << "Error deleting directory: " << path << std::endl; } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 08977ee..7d3e7fd 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -12,8 +12,16 @@ #include "./../../headers/Server.hpp" #include "./../../headers/debug.hpp" //! +#include #include + +//? +#include +#include +#include +#include // For getaddrinfo + Server::Server(void)//! why ? { this->limitClientBodySize = FT_LIMIT_BODY_SIZE; @@ -26,10 +34,10 @@ Server::Server(void)//! why ? Server::~Server(void) { - // if (this->serverSocket != -1) - // // close(this->serverSocket); - // if (this->serverBind != -1) - // close(this->serverBind); + if (this->serverSocket != -1) + close(this->serverSocket); + if (this->serverBind != -1) + close(this->serverBind); } Server::Server(const Server& srv, uint32_t port) //! @@ -103,10 +111,13 @@ static void fillServerData(std::string& line, Server& srv) { } else if (!line.compare(0, 14, "upload_enabled")) { validateAndTrim(str); FtPars::enableUploadsHandler(srv, str); - } else if (!line.compare(0, 13, "location_root")) - { + } else if (!line.compare(0, 13, "location_root")) { validateAndTrim(str); srv.setRootPath(str); + } else if (!line.compare(0, 9, "redirects")) { + std::cout << "-----> redirects: " << str << std::endl; + validateAndTrim(str); + FtPars::handleRedirects(srv, str); } } @@ -200,6 +211,11 @@ int Server::getSocket() const return (this->serverSocket); } +const std::map& Server::getRedirects(void) const +{ + return (this->redirects); +} + void Server::setPort(uint32_t val) { this->port = val; @@ -259,6 +275,11 @@ void Server::setRootPath(std::string& val) this->rootPath = val; } +void Server::setRedirects(const std::string& key, const std::string& val) +{ + this->redirects[key] = val; +} + // INET FUNCTIONS void Server::initServer(void) @@ -303,6 +324,7 @@ void Server::ftBind(void) // std::cout << "Binded to port " << this->port << std::endl; //! remove this } + void Server::ftListen(void) { if ((this->serverListenFd = listen(this->serverSocket, LISTEN_BACKLOG)) < 0) diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index d75e5ae..fda4511 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,11 +6,12 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/04/22 15:03:58 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 20:17:13 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Webserv.hpp" +#include Webserv::Webserv() { @@ -124,6 +125,7 @@ void Webserv::acceptNewConnection(int fd) } catch (const std::exception& e) { std::cerr << e.what() << std::endl; } + // this->requestCount++; } //! Handle Client Request @@ -157,14 +159,25 @@ void Webserv::handleClientRequest(int pollIdx, int fd) std::cerr << "Error: client not found" << std::endl; return; } - + if (it->second.bodyReded != -1) { + it->second.bodyReded += bytesRead; + } // if (this->_isRequestComplete(this->_requests[fd].request)) { // //! // std::cout << "Request complete: " << this->_requests[fd].request << std::endl; // send(fd, response.c_str(), response.size(), 0); //! check send length // this->_closeClient(fd); // } - if (this->_isRequestComplete(it->second)) + if (!this->isRequestValid(it->second)) { + std::cout << "400 Request not valid" << std::endl; + std::string response = "HTTP/1.1 400 Bad Request\r\n" + "Content-Length: 0\r\n" + "\r\n"; + send(fd, response.c_str(), response.size(), 0); + this->_closeClient(fd); + return; + } + else if (this->_isRequestComplete(it->second)) this->handleRequest(it->second); } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 4336037..394c44e 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/22 20:28:49 by ochouati ### ########.fr */ +/* Updated: 2025/04/23 19:43:45 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,6 +18,8 @@ #include #include +int WebservHandler::requestCount = 0; + WebservHandler::WebservHandler() { } @@ -38,6 +40,7 @@ void WebservHandler::_closeClient(int fd) break; } } + std::cout << COL_GREEN << "The request count: " << requestCount << END_COL << std::endl; // remove from requests } @@ -136,11 +139,19 @@ bool WebservHandler::isRequestComplete(ClientData& client) bool WebservHandler::isRequestValid(ClientData& client) { size_t max = client.server->getLimitClientBodySize(); + std::cout << COL_GREEN << "------------------ >> (isRequestValid....) << ----------------" << END_COL << std::endl; + std::cout << COL_MAGENTA << "Body readed: " << client.bodyReded << " & Max: " << max << std::endl; (void)max; //! if bad request chunked and content length //! if bad request content length and no content //! if bad request no content and chunked //! if content length more than server limit + if (client.bodyReded > static_cast(max)) + { + std::cout << COL_RED << "Request body size exceeds server limit" << END_COL << std::endl; + return (false); + } + std::cout << COL_GREEN << "------------------ >> (Request Valid....) << ----------------" << END_COL << std::endl; return (true); } @@ -162,14 +173,20 @@ void WebservHandler::setBoundary(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { std::string exampleHtml = "

Welcome to 1337 Webserv

"; + // std::string exampleHtml = "{\"message\": \"File uploaded successfully!\"}"; std::string response = "HTTP/1.1 200 OK\r\n" - "Content-Type: text/html\r\n" - "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" - "\r\n" + exampleHtml; + "Content-Type: text/html\r\n" + "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" + "Access-Control-Allow-Origin: *\r\n" // Allow requests from any origin + "Access-Control-Allow-Methods: POST, GET, OPTIONS\r\n" // Allow specific methods + "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" // Allow specific headers + "\r\n" + exampleHtml; printWarning("handleRequest...."); - std::ofstream logFile("request.log", std::ios::app); - if (logFile.is_open()) - logFile << client.request << std::endl; + // std::ofstream logFile("request.log", std::ios::app); + // if (logFile.is_open()) + // logFile << client.request << std::endl; std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) + this->requestCount++; //! increment request count (Delete this) + this->_closeClient(client.fd); } diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index 0a1bbbd..fdd324c 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -12,6 +12,7 @@ #include "./../../../headers/FtPars.hpp" #include +#include /// @brief collection of helper functions for parsing namespace FtPars { @@ -222,4 +223,30 @@ namespace FtPars { return (ss.str()); } + void handleRedirects(Server& server, std::string& line) { + // /tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html + std::string tmp; + std::stringstream ss(line); + std::vector arr; + if (ss.fail()) + throw std::runtime_error("Error parsing server redirects"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + for (size_t i = 0; i < arr.size(); i++) { + std::stringstream ss2(arr[i]); + std::string key; + std::string val; + if (getline(ss2, key, ':') && getline(ss2, val, ':')) { + if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) + throw std::runtime_error("Error parsing server redirects"); + server.setRedirects(key, val); + } else + throw std::runtime_error("Error parsing server redirects"); + } + std::cout << COL_YELLOW << "Redirects: ----------------------> " << std::endl; + for (std::map::const_iterator it = server.getRedirects().begin(); it != server.getRedirects().end(); ++it) { + std::cout << COL_YELLOW << "Key: " << it->first << " Value: " << it->second << END_COL << std::endl; + } + std::cout << COL_YELLOW << "----------------------------------" << END_COL << std::endl; + } } diff --git a/test/runner.go b/test/runner.go new file mode 100644 index 0000000..659e1a0 --- /dev/null +++ b/test/runner.go @@ -0,0 +1,145 @@ +package main + +import ( + "bufio" + "fmt" + "net/http" + "os" + "strconv" + "strings" + "sync" + "time" +) + +type Data struct { + host string + port int + testNbr int + timeout int + runTime int // if >0, run for this many seconds instead of fixed count +} + +func main() { + // defaults + cfg := Data{"127.0.0.1", 8080, 10, 10, 0} + reader := bufio.NewReader(os.Stdin) + + fmt.Printf("Enter host (default %s): ", cfg.host) + if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { + cfg.host = strings.TrimSpace(input) + } + + fmt.Printf("Enter port (default %d): ", cfg.port) + if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { + if p, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { + cfg.port = p + } else { + fmt.Fprintf(os.Stderr, "Invalid port, using default %d\n", cfg.port) + } + } + + fmt.Printf("Enter number of requests (default %d): ", cfg.testNbr) + if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { + if n, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { + cfg.testNbr = n + } else { + fmt.Fprintf(os.Stderr, "Invalid count, using default %d\n", cfg.testNbr) + } + } + + fmt.Printf("Enter timeout in seconds (default %d): ", cfg.timeout) + if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { + if t, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { + cfg.timeout = t + } else { + fmt.Fprintf(os.Stderr, "Invalid timeout, using default %d\n", cfg.timeout) + } + } + + fmt.Printf("Enter running time in seconds (default %d; 0=disabled): ", cfg.runTime) + if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { + if rt, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { + cfg.runTime = rt + } else { + fmt.Fprintf(os.Stderr, "Invalid duration, using default %d\n", cfg.runTime) + } + } + + runTest(cfg) +} + +func runTest(d Data) { + url := fmt.Sprintf("http://%s:%d/", d.host, d.port) + mode := "fixed count" + if d.runTime > 0 { + mode = fmt.Sprintf("duration %ds", d.runTime) + } + fmt.Printf("\nTesting %s with %s, timeout %ds...\n\n", url, mode, d.timeout) + + client := http.Client{Timeout: time.Duration(d.timeout) * time.Second} + var ( + wg sync.WaitGroup + mu sync.Mutex + successes int + failures int + totalReqs int + ) + + start := time.Now() + + if d.runTime > 0 { + // time-based: loop until elapsed >= runTime + for time.Since(start) < time.Duration(d.runTime)*time.Second { + wg.Add(1) + go func() { + defer wg.Done() + resp, err := client.Get(url) + mu.Lock() + defer mu.Unlock() + totalReqs++ + if err != nil { + failures++ + return + } + defer resp.Body.Close() + if resp.StatusCode >= 200 && resp.StatusCode < 300 { + successes++ + } else { + failures++ + } + }() + } + } else { + // count-based: fire exactly testNbr concurrent requests + for i := 0; i < d.testNbr; i++ { + wg.Add(1) + go func() { + defer wg.Done() + resp, err := client.Get(url) + mu.Lock() + defer mu.Unlock() + totalReqs++ + if err != nil { + failures++ + return + } + defer resp.Body.Close() + if resp.StatusCode >= 200 && resp.StatusCode < 300 { + successes++ + } else { + failures++ + } + }() + } + } + + wg.Wait() + elapsed := time.Since(start) + + fmt.Println("----- Results -----") + fmt.Printf("Total requests sent: %d\n", totalReqs) + fmt.Printf("Successful (2xx): %d\n", successes) + fmt.Printf("Failed (error/other): %d\n", failures) + fmt.Printf("Total time elapsed: %v\n", elapsed) + fmt.Printf("Requests per second: %.2f\n", float64(totalReqs)/elapsed.Seconds()) +} diff --git a/websites/upload/index.html b/websites/upload/index.html index 659e8b3..c64e96c 100644 --- a/websites/upload/index.html +++ b/websites/upload/index.html @@ -52,10 +52,10 @@ }) .then(response => response.json()) .then(data => { - console.log('Success:', data); + console.log('=> Success:', data); }) .catch((error) => { - console.error('Error:', error); + console.error('=> Error:', error); }); } else { alert("Please select a file to upload."); From 5d41bdd13381e65b8b8f3f3d98369c7306c55ae7 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Thu, 24 Apr 2025 08:45:34 +0100 Subject: [PATCH 10/66] fix project on llinux --- headers/Response.hpp | 16 +++------------- headers/ResponseUtils.hpp | 12 +++++++++--- srcs/models/Response.cpp | 8 +++++--- srcs/models/Server.cpp | 4 ++-- srcs/utils/ResponseUtils.cpp | 16 +++++++--------- 5 files changed, 26 insertions(+), 30 deletions(-) diff --git a/headers/Response.hpp b/headers/Response.hpp index c8773de..8b4a15b 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -3,30 +3,20 @@ /* ::: :::::::: */ /* Response.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/23 14:50:21 by mboujama ### ########.fr */ +/* Updated: 2025/04/24 08:43:29 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once -# include # include "../learning/request.hpp" # include "./WebservHandler.hpp" # include "./ResponseUtils.hpp" # include "./MimeTypes.hpp" -# include -#include -#include -#include -#include -#include -#include -#include -#include -#include + class Response : public MimeTypes { diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index b46d268..fb7f11f 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -3,23 +3,29 @@ /* ::: :::::::: */ /* ResponseUtils.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/23 13:56:53 by mboujama ### ########.fr */ +/* Updated: 2025/04/24 08:45:03 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once # include -# include # include # include # include # include # include # include +#include +# include +# include +# include +# include +# include +# include enum RESPONSE_CODE { NOT_FOUND = 404, diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 6e0998b..d7dfedb 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/23 14:50:28 by mboujama ### ########.fr */ +/* Updated: 2025/04/24 08:37:30 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -44,7 +44,9 @@ std::string Response::combineResponse(void) { } Response::Response(struct ClientData &client, Request &req) { - std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; + // std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; + // root path for linux: + std::string root_path = "/home/mmboujamaa/Main/1337/1337-webserv/var/www/html"; std::string full_path = root_path + req.getPath(); http_version = req.getVersion(); diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 3898f45..2a57c64 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -269,8 +269,8 @@ void Server::setSocketOptions(void) // socketFd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt) if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0) throw std::runtime_error("Set socket options REUSEADDR failed"); - if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) - throw std::runtime_error("Set socket options REUSEADDR failed"); + // if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) + // throw std::runtime_error("Set socket options REUSEADDR failed"); // std::cout << "Socket options set for server " << this->serverSocket << std::endl; //! remove this } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index fa3d450..1ed73ab 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -3,17 +3,15 @@ /* ::: :::::::: */ /* ResponseUtils.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/23 14:40:16 by mboujama ### ########.fr */ +/* Updated: 2025/04/24 08:34:52 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" -#include -#include -#include + std::string ResponseUtils::getDateTime() { time_t rawtime; @@ -89,16 +87,16 @@ std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { std::ifstream file; switch (status) { case FORBIDDEN: - file.open(errorsPath + "403.html"); + file.open((errorsPath + std::string("403.html")).c_str()); break; case NOT_FOUND: - file.open(errorsPath + "404.html"); + file.open((errorsPath + std::string("404.html")).c_str()); break; case METHOD_NOT_ALLOWED: - file.open(errorsPath + "405.html"); + file.open((errorsPath + std::string("405.html")).c_str()); break; case INTERNAL_SERVER_ERROR: - file.open(errorsPath + "500.html"); + file.open((errorsPath + std::string("500.html")).c_str()); break; default: content = "Under control"; From 8b917c263e38274ae9b2886fe00a0fb8a1ef0aec Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Sat, 26 Apr 2025 09:17:31 +0100 Subject: [PATCH 11/66] tying autoindex --- headers/ResponseUtils.hpp | 11 +++---- srcs/models/Response.cpp | 20 ++++++++----- srcs/utils/ResponseUtils.cpp | 29 +++++++++++++++++-- var/www/html/autoindex/folder1/index.html | 0 .../autoindex/folder2/subfolder2/hello.py | 0 var/www/html/autoindex/folder3/Main.java | 0 var/www/html/autoindex/program.go | 0 var/www/html/autoindex/script.sh | 0 8 files changed, 43 insertions(+), 17 deletions(-) create mode 100644 var/www/html/autoindex/folder1/index.html create mode 100644 var/www/html/autoindex/folder2/subfolder2/hello.py create mode 100644 var/www/html/autoindex/folder3/Main.java create mode 100644 var/www/html/autoindex/program.go create mode 100644 var/www/html/autoindex/script.sh diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index fb7f11f..73186dc 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/24 08:45:03 by mboujama ### ########.fr */ +/* Updated: 2025/04/26 09:15:53 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,14 +18,10 @@ # include # include # include -# include -#include # include -# include -# include -# include # include -# include +# include +# include enum RESPONSE_CODE { NOT_FOUND = 404, @@ -51,4 +47,5 @@ class ResponseUtils { static std::string isIndexFileExist(std::map &indexes, const std::string &path); static std::string getErrorPage(RESPONSE_CODE status); static std::string getMimeType(std::string filepath); + static std::string generateAutoIndex(std::string filepath); }; \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d7dfedb..d329f69 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/24 08:37:30 by mboujama ### ########.fr */ +/* Updated: 2025/04/24 12:18:14 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -44,16 +44,17 @@ std::string Response::combineResponse(void) { } Response::Response(struct ClientData &client, Request &req) { - // std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; - // root path for linux: - std::string root_path = "/home/mmboujamaa/Main/1337/1337-webserv/var/www/html"; + std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; + //? root path for linux: + // std::string root_path = "/home/mmboujamaa/Main/1337/1337-webserv/var/www/html"; std::string full_path = root_path + req.getPath(); http_version = req.getVersion(); headers["Server"] = "NorthServ/1.0"; headers["Content-Type"] = "text/html"; - headers["Connection"] = "keep-alive"; + headers["Connection"] = "close"; headers["Date"] = ResponseUtils::getDateTime(); + fd = -1; //TODO: add checkRedirect: if (full_path.find("..") != std::string::npos) @@ -93,7 +94,8 @@ Response::Response(struct ClientData &client, Request &req) { default: status_code = OK; status_text = "OK"; - body = "

All is good

"; + if (body.empty()) + body = "

All is good

"; headers["Content-Length"] = ResponseUtils::toString(body.length()); status_code = OK; } @@ -117,6 +119,7 @@ void Response::handleGet(struct ClientData &client, Request &req, const std::str std::string index = ResponseUtils::isIndexFileExist(indexes, path); if (!index.empty()) { + // TODO: check cgi fd = ResponseUtils::openFile(path + index); fd == -1 ? status_code = FORBIDDEN : status_code = OK; return ; @@ -124,6 +127,7 @@ void Response::handleGet(struct ClientData &client, Request &req, const std::str // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) else if (client.server->getAutoIndex()) { std::cout << "Autoindex enabled" << std::endl; + body = ResponseUtils::generateAutoIndex(path); status_code = OK; } else { @@ -132,9 +136,9 @@ void Response::handleGet(struct ClientData &client, Request &req, const std::str } } else { - std::string mimeType = getMimeType(path); + headers["Content-Type"] = getMimeType(path); - std::cout << "Extension: " << mimeType << std::endl; + std::cout << "Extension: " << headers["Content-Type"] << std::endl; // TODO: 3- if file serve it (CGI || 200) std::cout << "this is a file" << std::endl; } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/utils/ResponseUtils.cpp index 1ed73ab..9b0ee8c 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/utils/ResponseUtils.cpp @@ -6,13 +6,12 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/24 08:34:52 by mboujama ### ########.fr */ +/* Updated: 2025/04/26 09:13:42 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" - std::string ResponseUtils::getDateTime() { time_t rawtime; struct tm * datetime; @@ -115,3 +114,29 @@ std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { return content; } + +std::string ResponseUtils::generateAutoIndex(std::string filepath) { + std::stringstream body; + DIR *dir; + struct dirent *ent; + bool first = true; + + body << "" << filepath << "
"; + + dir = opendir(filepath.c_str()); + while ((ent = readdir(dir))) { + if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) + continue ; + if (!first) + body << "
"; + body << "" + << std::endl; + first = false; + } + if (first) + body << "

This directory is empty

"; + body << ""; + return body.str(); +} diff --git a/var/www/html/autoindex/folder1/index.html b/var/www/html/autoindex/folder1/index.html new file mode 100644 index 0000000..e69de29 diff --git a/var/www/html/autoindex/folder2/subfolder2/hello.py b/var/www/html/autoindex/folder2/subfolder2/hello.py new file mode 100644 index 0000000..e69de29 diff --git a/var/www/html/autoindex/folder3/Main.java b/var/www/html/autoindex/folder3/Main.java new file mode 100644 index 0000000..e69de29 diff --git a/var/www/html/autoindex/program.go b/var/www/html/autoindex/program.go new file mode 100644 index 0000000..e69de29 diff --git a/var/www/html/autoindex/script.sh b/var/www/html/autoindex/script.sh new file mode 100644 index 0000000..e69de29 From 3e45b5311a132f2db7d7da1afbeb368ec99ef59a Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Mon, 5 May 2025 11:52:38 +0100 Subject: [PATCH 12/66] done with upload --- headers/WebservHandler.hpp | 16 +++-- learning/cgi.cpp | 6 +- srcs/models/Upload.cpp | 134 +++++++++++++++++++++++++++++++++++++ 3 files changed, 148 insertions(+), 8 deletions(-) create mode 100644 srcs/models/Upload.cpp diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 2917a74..277eb74 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -15,22 +15,23 @@ # include "FtPars.hpp" #include #include -#include -#include -#include -#include +// #include +// #include +// #include +// #include +#include +#include #include #include #include #include #include -#include #include "debug.hpp" # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 4096 +# define READ_SIZE 100 # define CHUNCK_SIZE 4096 enum requestType { @@ -55,6 +56,9 @@ struct ClientData { std::string headers; long bodyReded; std::string boundary; + std::string tmpFolder; + std::string tmpFileName; + int currentFileFd; //! add map ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL), bodyReded(-1) {} }; diff --git a/learning/cgi.cpp b/learning/cgi.cpp index 1ecaaec..146fa28 100644 --- a/learning/cgi.cpp +++ b/learning/cgi.cpp @@ -70,13 +70,14 @@ std::string locateExecutable(const std::vector &searchPaths, const return ""; } -void executeCgiScript(Request &request, char **systemEnv) +std::string executeCgiScript(Request &request, char **systemEnv) { char **envVariables = createEnvironmentVariables(request, systemEnv); std::vector binaryPaths = extractBinaryPaths(systemEnv); std::string scriptExtension; std::string interpreterPath; size_t extensionPos; + std::string file; extensionPos = request.getPath().find_last_of("."); if (extensionPos != std::string::npos) scriptExtension = request.getPath().substr(extensionPos); @@ -109,7 +110,7 @@ void executeCgiScript(Request &request, char **systemEnv) while ((bytesRead = read(pipeFd[0], outputBuffer, sizeof(outputBuffer) - 1)) > 0) { outputBuffer[bytesRead] = '\0'; - std::cout << outputBuffer; + file += outputBuffer; } close(pipeFd[0]); waitpid(processId, NULL, 0); @@ -121,4 +122,5 @@ void executeCgiScript(Request &request, char **systemEnv) delete envVariables[i]; } delete[] envVariables; + return file; } diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp new file mode 100644 index 0000000..f9156de --- /dev/null +++ b/srcs/models/Upload.cpp @@ -0,0 +1,134 @@ +#include "./../../headers/Webserv.hpp" +#include +#include +#include +#include +#include + +/*-------- LARGE FILES ALGORITHM: --------*/ +// Receive chunk → store in buffer +// Scan for --boundary123: +// Found: +// Save previous data to temp file +// Parse headers for new filename +// Start new temp file +// Not found: Append to current temp file +// On --boundary123--: +// Finalize last file +// Delete partial data if any +// Only after ALL boundaries processed: +// Rename temp files to final names +/*-----------------------------------------*/ + +#define CHARS_SIZE 256 + +// void badCharHeuristic(std::string pattern, size_t size, int badChar[CHARS_SIZE]) +// { +// for (size_t i = 0; i < CHARS_SIZE; ++i) +// badChar[i] = -1; + +// for (size_t i = 0; i < size; ++i) +// badChar[(size_t)pattern[i]] = i; +// } + +// // the txt variable should stay string not string& because i pass a char[n] to it. +// int search(const std::string &txt, const std::string &pattern) +// { +// if (pattern.empty() || txt.empty()) +// return -1; + +// int badChar[CHARS_SIZE]; + +// int patternSize = pattern.size(); +// int txtSize = txt.size(); +// badCharHeuristic(pattern, patternSize, badChar); + +// int skip = 0; +// int i = 0; +// int j; +// while (i <= txtSize - patternSize) +// { +// j = patternSize - 1; +// while (j >= 0 && pattern[j] == txt[i + j]) +// --j; +// if (j < 0) +// return i; +// skip = std::max(1, j - badChar[(int)txt[i + j]]); +// i += skip; +// } +// return -1; +// } + +/// get file name from a buffer request +std::string getFileName(const std::string &buffer){ + std::string fileName; + size_t i = buffer.find("filename=\""); + if (i != std::string::npos) { + for (i = i + 10; buffer[i] != '"' && buffer[i] ; ++i){ + fileName += buffer[i]; + } + if(buffer[i] != '"') + return ""; + } + return fileName; +} + +//! - add temp file to temp folder +//! - add copy the fie from temp folder to the corant folder +// You should put all tmp files in a temp folder +void processMultipartUpload(ClientData &client) +{ + ssize_t written; + while(!client.request.empty()) { + if (client.currentFileFd == -1){ + size_t headers = client.request.find("\r\n\r\n"); + std::string fileName; + if (headers != std::string::npos) { + fileName = getFileName(client.request); + if (!fileName.empty()) { + client.tmpFileName = "upload_" + fileName; + client.currentFileFd = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); + if (client.currentFileFd == -1) + break; + } + client.request.erase(0, headers + 4); + } + else + return; + } + + size_t boundary = client.request.find("--" + client.boundary); + if (boundary != std::string::npos) { + if (client.currentFileFd != -1){ + written = write(client.currentFileFd, + client.request.c_str(), + boundary > 2 ? boundary - 2: 0); + if (written == -1){ + close(client.currentFileFd); + client.currentFileFd = -1; + return; + } + } + if(client.request.find("--" + client.boundary + "--") != std::string::npos){ + close(client.currentFileFd); + client.currentFileFd = -1; + } + client.request.erase(0, boundary); + continue; + } + + if (client.currentFileFd != -1) { + written = write(client.currentFileFd, + client.request.c_str(), + client.request.size()); + if (written == -1){ + close(client.currentFileFd); + client.currentFileFd = -1; + return; + } + client.request.erase(0, written); + } + else + client.request.clear(); + } +} From b02879dc2cc51ba88e02bbd52aacd228b35428b0 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 7 May 2025 13:41:44 +0100 Subject: [PATCH 13/66] merged-with-achakkaf --- .gitignore | 1 + configs/config.conf | 10 ++-- headers/ClientData.hpp | 59 +++++++++++++++++++++++ headers/FtPars.hpp | 7 ++- headers/Server.hpp | 16 ++++++- headers/Webserv.hpp | 8 ++-- headers/WebservHandler.hpp | 41 ++++------------ headers/header.hpp | 3 ++ main.cpp | 6 +++ srcs/models/Server.cpp | 65 +++++++++++++++++++++---- srcs/models/Webserv.cpp | 85 ++++++++++++++++++++------------- srcs/models/WebservHandler.cpp | 76 +++++++++++++++++++++++++---- srcs/parsing/helpers/FtPars.cpp | 34 ++++++++++++- websites/landing/index.html | 75 +++++++++++++++++++++++++++++ websites/landing/script.js | 7 +++ websites/landing/style.css | 78 ++++++++++++++++++++++++++++++ 16 files changed, 475 insertions(+), 96 deletions(-) create mode 100644 headers/ClientData.hpp create mode 100644 websites/landing/index.html create mode 100644 websites/landing/script.js create mode 100644 websites/landing/style.css diff --git a/.gitignore b/.gitignore index 0badff8..d61ac65 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,7 @@ labs/app *.so *.dylib *.dll +*.zip # Fortran module files *.mod diff --git a/configs/config.conf b/configs/config.conf index bb51c18..7b38b7a 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -6,8 +6,10 @@ host = "127.0.0.1" port = "8080,5555" server_name = "myserver.local" client_max_body_size = "4000" +# Timeouts IN SECONDS +client_timeout = "6" redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" - +client_body_temp_path= "/var/tmp/nginx/client_body" # Default error pages error_page_404 = "/errors/404.html" error_page_500 = "/errors/500.html" @@ -25,7 +27,7 @@ location3_path = "./scripts/php/" location3_root = "/var/www/cgi-bin" location3_cgi_enable = ".php,.py" location3_cgi_path_info = "on" -cgi = "/usr/bin/php-cgi,.py" +cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" ############################################################################### @@ -50,7 +52,7 @@ autoindex = "on" # Server 3 ############################################################################### [server.third] -host = "192.168.1.1" +host = "10.12.5.9" port = "8081" server_name = "third-server.local" client_max_body_size = "2097152" @@ -72,7 +74,7 @@ location1_upload_enabled = "off" # Server 4 ############################################################################### [server.fourth] -host = "10.0.0.1" +host = "0.0.0.0" port = "4444,7070" server_name = "fourth-server.local" client_max_body_size = "5242880" diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp new file mode 100644 index 0000000..f3dfdc0 --- /dev/null +++ b/headers/ClientData.hpp @@ -0,0 +1,59 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ClientData.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ +/* Updated: 2025/05/07 11:35:17 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#pragma once + +# include "FtPars.hpp" +#include + +enum requestType { + NOT_SET = -1, + CONTENT_LENGTH, + CHUNKED, + NO_CONTENT, + MULTIPART_FORM, +}; + +enum requestProgress { + NOT_STARTED = -1, + WORKING, + READY, +}; + +struct ClientData { + int fd; + requestType type; + bool isRequestComplete; + size_t bytesSent; + long contentLen; + size_t readed; //! why ? + bool isHeaderComplete; + bool isHeadersChecked; + int file; //! + std::string request; + Server *server; + std::string headers; + long bodyReded; + std::string boundary; + requestProgress progress; + size_t startTime; + std::string error; + std::string tmpFolder; + std::string tmpFileName; + int currentFileFd; + //! add map + ClientData() : type(NOT_SET), isRequestComplete(false), + bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), + isHeadersChecked(false), file(-1), server(NULL), bodyReded(-1), progress(NOT_STARTED), + startTime(FtPars::getCurrentTimeMs()) {} + ~ClientData() {} +}; diff --git a/headers/FtPars.hpp b/headers/FtPars.hpp index 7c12089..285fbe4 100644 --- a/headers/FtPars.hpp +++ b/headers/FtPars.hpp @@ -20,13 +20,14 @@ # include # include # include "Server.hpp" +#include typedef unsigned int uint32_t; typedef unsigned char uint8_t; #define FT_LIMIT_BODY_SIZE 80000 #define FT_PORT 8080 - +# define ALLOWED_CHARS "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~:/?#[]@!$&'()*+,;=" # define COL_RED "\033[0;91m" # define COL_GREEN "\033[0;92m" # define COL_YELLOW "\033[0;93m" @@ -42,7 +43,7 @@ namespace FtPars { std::string& strTrim(std::string&str, std::string set); bool isValidPattern(std::string& str); bool isValidIP4(std::string& str); - uint32_t ftInetPton(const std::string& str); + uint32_t ftInetPton(const std::string& str); //! delete this char *stringToChar(std::string& str); std::map parseMethods(const std::map& oldMp, std::string& str); void setServerIndexes(Server& server, std::string& line); @@ -54,4 +55,6 @@ namespace FtPars { std::string toString(size_t nbr); void handleRedirects(Server& server, std::string& line); size_t hexaToNbr(std::string& str); //! not created yet + void handleCGIs(Server& server, std::string& line); + size_t getCurrentTimeMs(); } diff --git a/headers/Server.hpp b/headers/Server.hpp index fa2ec4a..4f55a7f 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -11,6 +11,7 @@ /* ************************************************************************** */ #pragma once +#include # include # include #include @@ -27,6 +28,7 @@ #define LISTEN_BACKLOG 12 //! should we increase this ? #define DEFAULT_ROOT_PATH "./website" +#define BODY_TEMP_PATH "./tmp/path" typedef unsigned int uint32_t; /// @brief server class that hold data for each website @@ -34,15 +36,18 @@ class Server { private: std::string host; uint32_t port; + size_t timeout; std::string serverName; std::string rootPath; uint32_t limitClientBodySize; + std::string clientBodyTempPath; std::string errorPage404; std::string errorPage500; std::string uploadsPath; std::map allowedMethods; //? std::map indexes; std::map redirects; + std::map cgis; std::vector ports; bool enableUploads; //? ! bool autoIndex; //? @@ -60,8 +65,10 @@ class Server { ~Server(void); static void setNonBlocking(int fd); Server(std::vector& arr, size_t& idx); - // Getters + //? Getters uint32_t getPort(void) const; + size_t getTimeout(void) const; + const std::string& getClientBodyTempPath(void) const; std::string getHost(void) const; std::string getserverName(void) const; std::string getRootPath(void) const; @@ -75,11 +82,15 @@ class Server { bool getEnableUploads(void) const; int getSocket() const; const std::map& getRedirects(void) const; - // Setters + const std::string& getCGI(std::string& val) const; + const std::map& getCGIs() const; + //? Setters void setPort(uint32_t val); + void setTimeout(size_t val); void setHost(std::string& val); void setserverName(std::string& val); void setLimitClientBodySize(uint32_t val); + void setClientBodyTempPath(std::string& val); void setErrorPage404(std::string& val); void setErrorPage500(std::string& val); void setIndex(std::string& key, bool val); @@ -89,6 +100,7 @@ class Server { void setEnableUploads(bool val); void setRootPath(std::string& val); void setRedirects(const std::string& key, const std::string& val); + void setCGI(std::string& key, std::string& val); // Server_handlers void initServer(void); }; diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index 1fa2357..4ba03c2 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -6,12 +6,13 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 16:49:53 by ochouati #+# #+# */ -/* Updated: 2025/04/10 14:59:07 by ochouati ### ########.fr */ +/* Updated: 2025/05/05 18:17:31 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once +#include "ClientData.hpp" # include "WebservHandler.hpp" # include "readConfig.hpp" #include @@ -22,19 +23,19 @@ # include - class Webserv : public WebservHandler { private: readConfig *_config; // std::vector _servers; // std::vector _pollfds; // std::vector _fds; - std::vector _envs; int _nbrEvents; + std::vector _envs; // std::map _requests; bool _isRequestComplete(ClientData& client); void _init(); // void setNonBlocking(int fd); + public: Webserv(); @@ -46,5 +47,6 @@ class Webserv : public WebservHandler { bool isServerSocket(int fd) const; void acceptNewConnection(int srvfd); void handleClientRequest(int pollIdx, int fd); + void sendResponse(int fd); }; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 277eb74..d633055 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,13 +6,13 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/04/23 20:11:03 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 11:34:45 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once -# include "FtPars.hpp" + #include #include // #include @@ -27,41 +27,16 @@ #include #include #include "debug.hpp" +#include "ClientData.hpp" # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 100 +# define READ_SIZE 8192 +# define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 -enum requestType { - NOT_SET = -1, - CONTENT_LENGTH, - CHUNKED, - NO_CONTENT, - MULTIPART_FORM, -}; - -struct ClientData { - int fd; - requestType type; - bool isRequestComplete; - size_t bytesSent; - long contentLen; - size_t readed; //! why ? - bool isHeaderComplete; - int file; //! - std::string request; - Server *server; - std::string headers; - long bodyReded; - std::string boundary; - std::string tmpFolder; - std::string tmpFileName; - int currentFileFd; - //! add map - ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), file(-1), server(NULL), bodyReded(-1) {} -}; +typedef std::map::iterator mapIt; class WebservHandler { @@ -78,10 +53,14 @@ class WebservHandler void handleRequest(ClientData& client); void _closeClient(int fd); void setBoundary(ClientData& client); + //* Validate the request + void validateRequestHeaders(ClientData& client); + void validateUrl(ClientData& client); public: WebservHandler(); static int requestCount; + void enablePOLLOUT(int fd); ~WebservHandler(); }; diff --git a/headers/header.hpp b/headers/header.hpp index 2d297f7..64d1150 100644 --- a/headers/header.hpp +++ b/headers/header.hpp @@ -17,4 +17,7 @@ # include # define FIRST_INDEX 0 +extern char **serverEnv; +extern std::string *notFound; + std::string& strTrim(std::string&str, std::string set); //! \ No newline at end of file diff --git a/main.cpp b/main.cpp index 692866f..f256a66 100644 --- a/main.cpp +++ b/main.cpp @@ -15,6 +15,7 @@ #include "headers/debug.hpp"//! #include "headers/readConfig.hpp" #include +#include #include #include #include @@ -22,6 +23,9 @@ #include #include +char **serverEnv; +std::string *notFound; + void ll(){ //! DELETE ME system("leaks webserv"); } @@ -46,5 +50,7 @@ int main(int ac, char **av, char **env) std::cout << "config file require!" << std::endl; return (1); } + serverEnv = env; + notFound = new std::string("not_found"); return (server(av[1], env)); } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 7d3e7fd..762fd48 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -11,6 +11,7 @@ /* ************************************************************************** */ #include "./../../headers/Server.hpp" +#include "./../../headers/Webserv.hpp" #include "./../../headers/debug.hpp" //! #include #include @@ -30,6 +31,7 @@ Server::Server(void)//! why ? this->serverBind = -1; this->serverSocket = -1; this->rootPath = DEFAULT_ROOT_PATH; + this->clientBodyTempPath = BODY_TEMP_PATH; } Server::~Server(void) @@ -86,7 +88,6 @@ static void fillServerData(std::string& line, Server& srv) { srv.setHost(str); } else if (!line.compare(0, 4, "port")) { validateAndTrim(str); - // srv.setPort(std::atoi(str.c_str())); FtPars::serverPortsHandler(srv, str); } else if (!line.compare(0, 20, "client_max_body_size")) { validateAndTrim(str); @@ -98,9 +99,7 @@ static void fillServerData(std::string& line, Server& srv) { validateAndTrim(str); srv.setErrorPage500(str); }else if (!line.compare(0, 15, "allowed_methods")) { - // std::cout << "-----> allowed_methods: " << str << std::endl; validateAndTrim(str); - // srv.getMethods() = FtPars::parseMethods(srv.getAllowedMethods(), str); srv.setMethods(FtPars::parseMethods(srv.getAllowedMethods(), str)); } else if (!line.compare(0, 7, "indexes")) { validateAndTrim(str); @@ -118,6 +117,15 @@ static void fillServerData(std::string& line, Server& srv) { std::cout << "-----> redirects: " << str << std::endl; validateAndTrim(str); FtPars::handleRedirects(srv, str); + } else if (!line.compare(0, 21, "client_body_temp_path")) { + validateAndTrim(str); + srv.setClientBodyTempPath(str); + } else if (!line.compare(0, 3, "cgi")) { + validateAndTrim(str); + FtPars::handleCGIs(srv, str); + } else if (!line.compare(0, 14, "client_timeout")) { + validateAndTrim(str); + srv.setTimeout(std::atoi(str.c_str())); } } @@ -147,11 +155,18 @@ Server::Server(std::vector& arr, size_t& idx) setServer(arr, idx, *this); } +// GETTERS + uint32_t Server::getPort(void) const { return (this->port); } +size_t Server::getTimeout(void) const +{ + return (this->timeout); +} + std::string Server::getHost(void) const { return (this->host); @@ -206,6 +221,11 @@ bool Server::getEnableUploads(void) const return (this->enableUploads); } +const std::string& Server::getClientBodyTempPath(void) const +{ + return (this->clientBodyTempPath); +} + int Server::getSocket() const { return (this->serverSocket); @@ -216,16 +236,41 @@ const std::map& Server::getRedirects(void) const return (this->redirects); } +const std::string& Server::getCGI(std::string& val) const +{ + std::map::const_iterator it = this->cgis.find(val); + if (it != this->cgis.end()) + return (it->second); + return (*(notFound)); +} + +const std::map& Server::getCGIs() const +{ + return (this->cgis); +} + +// SETTERS + void Server::setPort(uint32_t val) { this->port = val; } +void Server::setTimeout(size_t val) +{ + this->timeout = val; +} + void Server::setHost(std::string& val) { this->host = val; } +void Server::setClientBodyTempPath(std::string& val) +{ + this->clientBodyTempPath = val; +} + void Server::setserverName(std::string& val) { this->serverName = val; @@ -280,6 +325,11 @@ void Server::setRedirects(const std::string& key, const std::string& val) this->redirects[key] = val; } +void Server::setCGI(std::string& key, std::string& val) +{ + this->cgis[key] = val; +} + // INET FUNCTIONS void Server::initServer(void) @@ -296,18 +346,15 @@ void Server::ftSocket(void) this->serverSocket = socket(AF_INET, SOCK_STREAM, 0); if (this->serverSocket < 0) throw std::runtime_error("Socket creation failed"); - // std::cout << "Socket created: " << this->serverSocket << std::endl; //! remove this } void Server::setSocketOptions(void) { int opt = 1; - // socketFd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt) if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0) throw std::runtime_error("Set socket options REUSEADDR failed"); if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) throw std::runtime_error("Set socket options REUSEADDR failed"); - // std::cout << "Socket options set for server " << this->serverSocket << std::endl; //! remove this } @@ -318,10 +365,10 @@ void Server::ftBind(void) std::memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(this->port); - addr.sin_addr.s_addr = INADDR_ANY; //! use getaddrinfo and freeaddrinfo + std::cout << "Host: " << this->host << " len: " << this->host.size() << std::endl; + addr.sin_addr.s_addr = inet_addr(this->host.c_str()); if ((this->serverBind = bind(this->serverSocket, (struct sockaddr *)&addr, sizeof(addr))) < 0) throw std::runtime_error("Bind failed"); - // std::cout << "Binded to port " << this->port << std::endl; //! remove this } @@ -329,12 +376,10 @@ void Server::ftListen(void) { if ((this->serverListenFd = listen(this->serverSocket, LISTEN_BACKLOG)) < 0) throw std::runtime_error("Listen failed"); - // std::cout << "Listening on port " << this->port << std::endl; //! remove this } void Server::setNonBlocking(int fd) //! Duplicate code in Webserv.cpp { if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) throw std::runtime_error("Set non blocking failed"); - // std::cout << "Set non blocking for " << fd << std::endl; //! remove this } diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index fda4511..d492f5d 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,19 +6,22 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/04/23 20:17:13 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 13:06:47 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Webserv.hpp" +#include #include +#include Webserv::Webserv() { } Webserv::~Webserv() { - + delete notFound; + notFound = NULL; } Webserv::Webserv(readConfig& config, char **env) { @@ -35,12 +38,10 @@ Webserv::Webserv(readConfig& config, char **env) { void Webserv::_init() { std::cout << "initing............" << std::endl; + if (this->_servers.empty()) + throw std::runtime_error("No servers found"); for (size_t i = 0; i < this->_servers.size(); ++i) { - // init server //! add this this->_servers[i].initServer(); - // printServer(this->_servers[i]); //! remove this - // ... - std::cout << "server socket: " << this->_servers[i].getSocket() << std::endl; this->_pollfds.push_back((struct pollfd){this->_servers[i].getSocket(), POLLIN, 0}); } } @@ -48,26 +49,37 @@ void Webserv::_init() { void Webserv::run() { this->_init(); while (RUNNING) { - if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), -1)) < 0) - throw std::runtime_error("poll exception error"); + if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), 0)) < 0) { + std::cerr << COL_RED << "Error while polling: " << END_COL << std::endl; + continue; + } for (size_t i = 0; i < _pollfds.size() && this->_nbrEvents > 0; ++i) { - // std::cout << "NBR OF ENV: " << this->_nbrEvents << std::endl; + if (_pollfds[i].revents & (POLLERR | POLLHUP)) { + if (!isServerSocket(_pollfds[i].fd)) + this->_closeClient(_pollfds[i].fd); + --this->_nbrEvents; + continue; + } if (_pollfds[i].revents & POLLIN) { --this->_nbrEvents; - if (isServerSocket(_pollfds[i].fd)) { - // acceptNewConnection + if (isServerSocket(_pollfds[i].fd)) this->acceptNewConnection(_pollfds[i].fd); - } else { - // handle client request + else { this->handleClientRequest(i, _pollfds[i].fd); } printTime(); std::cout << COL_BLUE << " Events nbr: " << this->_nbrEvents << ":" << _pollfds[i].fd << END_COL << std::endl; } - // std::cout << "pollfd: " << _pollfds[i].fd << std::endl; + std::cout << " <<--------------------------------->> " << std::endl; //! remove this + if (_pollfds[i].revents & POLLOUT) { + //! Writting to client should be here + //? 1. Check if client still exists in _requests + //? 2. check if the request progress is complete + //? 3. send response + //? 4. close client + std::cout << COL_BLUE << "Sending response to client..." << END_COL << std::endl; + this->sendResponse(_pollfds[i].fd); + } } - // exit(0); - // sleep(1);//! remove this - // std::cout << "running.." << _pollfds.size() << std::endl; //! remove this } } @@ -110,7 +122,6 @@ void Webserv::acceptNewConnection(int fd) std::cout << "client fd: " << clientFd << std::endl; //! remove this if (clientFd < 0) //? Should really exit here? throw std::runtime_error("Error while accepting new connection"); - // this->setNonBlocking(clientFd); Server::setNonBlocking(clientFd); this->_pollfds.push_back((struct pollfd){clientFd, POLLIN, 0}); newClient.fd = clientFd; @@ -125,7 +136,6 @@ void Webserv::acceptNewConnection(int fd) } catch (const std::exception& e) { std::cerr << e.what() << std::endl; } - // this->requestCount++; } //! Handle Client Request @@ -159,25 +169,32 @@ void Webserv::handleClientRequest(int pollIdx, int fd) std::cerr << "Error: client not found" << std::endl; return; } + if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) //! + { + std::cout << "Client timeout" << std::endl; + this->_closeClient(fd); + return; + } if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; } - // if (this->_isRequestComplete(this->_requests[fd].request)) { - // //! - // std::cout << "Request complete: " << this->_requests[fd].request << std::endl; - // send(fd, response.c_str(), response.size(), 0); //! check send length - // this->_closeClient(fd); - // } - if (!this->isRequestValid(it->second)) { - std::cout << "400 Request not valid" << std::endl; - std::string response = "HTTP/1.1 400 Bad Request\r\n" - "Content-Length: 0\r\n" - "\r\n"; - send(fd, response.c_str(), response.size(), 0); - this->_closeClient(fd); + else if (this->_isRequestComplete(it->second)) { + printWarning("Request Ready......................>>>>"); + it->second.progress = READY; + this->enablePOLLOUT(fd); + } +} + +void Webserv::sendResponse(int fd) +{ + mapIt it = this->_requests.find(fd); + if (it == this->_requests.end()) { + std::cerr << "Error: client not found" << std::endl; return; } - else if (this->_isRequestComplete(it->second)) + if (it->second.progress == READY) { this->handleRequest(it->second); - + } + std::cout << " ************>>>>>>>>>>>>>>>>>> Sending response to client..." << std::endl; } + diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 394c44e..cc23810 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/04/23 19:43:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 13:41:10 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -34,14 +34,11 @@ void WebservHandler::_closeClient(int fd) if (_pollfds[i].fd == fd) { close(fd); std::vector::iterator tmp = _pollfds.begin() + i; - // std::cout << "Removing fd: " << tmp->fd << std::endl; _pollfds.erase(tmp); _requests.erase(fd); break; } } - std::cout << COL_GREEN << "The request count: " << requestCount << END_COL << std::endl; - // remove from requests } void WebservHandler::setRequestType(ClientData& client) @@ -57,7 +54,6 @@ void WebservHandler::setRequestType(ClientData& client) client.type = CHUNKED; else client.type = NO_CONTENT; - std::cout << "=> Request type: " ; printRequestType(client.type); } void WebservHandler::setContentLength(ClientData& client) @@ -109,7 +105,7 @@ bool WebservHandler::isHeaderComplete(ClientData& client) std::cout << "Header complete: \n" << client.headers << std::endl; //! remove this this->setBoundary(client); client.bodyReded = client.request.size(); - std::cout << "Body readed: " << client.bodyReded << std::endl; + // std::cout << "Body readed: " << client.bodyReded << std::endl; return (true); } return (false); @@ -118,6 +114,7 @@ bool WebservHandler::isHeaderComplete(ClientData& client) bool WebservHandler::isRequestComplete(ClientData& client) { printWarning("isRequestComplete...."); + this->isRequestValid(client); if (!client.isHeaderComplete) return (false); else if (client.type == CHUNKED) //! no longer @@ -138,6 +135,8 @@ bool WebservHandler::isRequestComplete(ClientData& client) bool WebservHandler::isRequestValid(ClientData& client) { + if (!client.isHeadersChecked) + this->validateRequestHeaders(client); size_t max = client.server->getLimitClientBodySize(); std::cout << COL_GREEN << "------------------ >> (isRequestValid....) << ----------------" << END_COL << std::endl; std::cout << COL_MAGENTA << "Body readed: " << client.bodyReded << " & Max: " << max << std::endl; @@ -172,6 +171,10 @@ void WebservHandler::setBoundary(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { + if (!client.error.empty()) { + send(client.fd, client.error.c_str(), client.error.size(), 0); + return ; + } std::string exampleHtml = "

Welcome to 1337 Webserv

"; // std::string exampleHtml = "{\"message\": \"File uploaded successfully!\"}"; std::string response = "HTTP/1.1 200 OK\r\n" @@ -182,11 +185,66 @@ void WebservHandler::handleRequest(ClientData& client) "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" // Allow specific headers "\r\n" + exampleHtml; printWarning("handleRequest...."); - // std::ofstream logFile("request.log", std::ios::app); - // if (logFile.is_open()) - // logFile << client.request << std::endl; std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) this->requestCount++; //! increment request count (Delete this) this->_closeClient(client.fd); } + +void WebservHandler::validateRequestHeaders(ClientData& client) +{ + if (!client.isHeaderComplete) + return; + printWarning("validate Request Headers...."); + this->validateUrl(client); + // client.isHeadersChecked = true; +} + +static void httpResponse414(ClientData& client) { + (void)client; + std::string response = "HTTP/1.1 414 Request-URI Too Long\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 59\r\n" + "\r\n

414 Request-URI Too Long

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; +} + +static void httpResponse400(ClientData& client) { + (void)client; + std::string response = "HTTP/1.1 400 Bad Request\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 50\r\n" + "\r\n

400 Bad Request

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; +} + +void WebservHandler::validateUrl(ClientData& client) +{ + // 414 Request-URI Too Long (more than URL_MAX_SIZE characters) + size_t start = client.headers.find_first_of("/", 0); + size_t end = client.headers.find(" HTTP/1.1", start); + std::cout << "start: " << start << " end: " << end << std::endl; + if (start == std::string::npos || end == std::string::npos) + return httpResponse400(client), this->enablePOLLOUT(client.fd); + std::string url = client.headers.substr(start, end - start); + if (end - start > URL_MAX_SIZE) + return httpResponse414(client), this->enablePOLLOUT(client.fd); + std::cout << "URL: " << url << " Lenght: " << end - start << std::endl; + // 400 Bad Request url contains invalid characters + if (url.find_first_not_of(ALLOWED_CHARS) != std::string::npos) + return httpResponse400(client), this->enablePOLLOUT(client.fd); +} + + +void WebservHandler::enablePOLLOUT(int fd) { + for (size_t i = 0; i < _pollfds.size(); ++i) { + if (_pollfds[i].fd == fd) { + _pollfds[i].events |= POLLOUT; + break; + } + } +} diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index fdd324c..aa685cd 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -12,6 +12,7 @@ #include "./../../../headers/FtPars.hpp" #include +#include #include /// @brief collection of helper functions for parsing @@ -224,7 +225,6 @@ namespace FtPars { } void handleRedirects(Server& server, std::string& line) { - // /tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html std::string tmp; std::stringstream ss(line); std::vector arr; @@ -249,4 +249,36 @@ namespace FtPars { } std::cout << COL_YELLOW << "----------------------------------" << END_COL << std::endl; } + + void handleCGIs(Server& server, std::string& line) { + // /usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs + std::string tmp; + std::stringstream ss(line); + std::vector arr; + if (ss.fail()) + throw std::runtime_error("Error parsing server cgis"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + for (size_t i = 0; i < arr.size(); i++) { + std::stringstream ss2(arr[i]); + std::string key; + std::string val; + if (getline(ss2, key, ':') && getline(ss2, val, ':')) { + if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) + throw std::runtime_error("Error parsing server cgis"); + server.setCGI(key, val); + } else + throw std::runtime_error("Error parsing server cgis"); + } + std::cout << COL_YELLOW << "CGIs: ----------------------> " << std::endl; + for (std::map::const_iterator it = server.getCGIs().begin(); it != server.getCGIs().end(); ++it) { + std::cout << COL_YELLOW << "Key: " << it->first << " Value: " << it->second << END_COL << std::endl; + } + std::cout << COL_YELLOW << "----------------------------------" << END_COL << std::endl; + } + + size_t getCurrentTimeMs() { + std::clock_t clock_time = std::clock(); + return static_cast(clock_time) * 1000 / CLOCKS_PER_SEC; + } } diff --git a/websites/landing/index.html b/websites/landing/index.html new file mode 100644 index 0000000..b061d1c --- /dev/null +++ b/websites/landing/index.html @@ -0,0 +1,75 @@ + + + + + + + + Northserv + + + +
+ +
+
+
+
+

Welcome to Northserv

+

Your one-stop solution for all your service needs.

+
+

Your one-stop solution for all your service needs.

+
+
+
+

About Us

+

We are dedicated to providing top-notch services to our clients.

+
+
+ otm +

Otmane Chouati

+

Otmane is a passionate developer with a knack for problem-solving.

+
+
+ achakkaf +

Abdelaziz Chakkaf

+

Abdelaziz is a passionate developer with a knack for problem-solving.

+
+
+ mboujama +

Moad Boujamaa

+

Moad is a passionate developer with a knack for problem-solving.

+
+
+
+
+
+
+

Our Projects

+

Explore our range of projects and services.

+
+
+
+
+

Contact Us

+

If you have any questions, feel free to reach out!

+
+
+
+
+ all rights reserved © Northserv +
+ + + + \ No newline at end of file diff --git a/websites/landing/script.js b/websites/landing/script.js new file mode 100644 index 0000000..6f9987c --- /dev/null +++ b/websites/landing/script.js @@ -0,0 +1,7 @@ + +let dateYearTag = document.querySelector("#date-year"); +dateYearTag.innerHTML = new Date().getFullYear(); + + + + diff --git a/websites/landing/style.css b/websites/landing/style.css new file mode 100644 index 0000000..38caefc --- /dev/null +++ b/websites/landing/style.css @@ -0,0 +1,78 @@ + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +header { + background-color: #4CAF50; + color: white; + text-align: center; + padding: 20px 0; +} + +nav { + display: flex; + justify-content: space-between; + align-items: center; + padding: 0 20px; +} + +nav ul { + display: flex; + gap: 20px; +} + +nav ul li { + list-style: none; +} + +a { + text-decoration: none; + color: white; +} + +h1 { + color: red; +} + +main { + padding: 20px; +} + +.users-image { + display: flex; + width: 90%; + gap: 20px; + justify-content: center; + align-items: center; + margin: 0 auto; +} + +.users-image div { + flex: 1; + background-color: beige; + justify-content: center; + align-items: center; + text-align: center; + border: 1px solid #ccc; + border-radius: 10px; + box-shadow: 4px 4px 4px rgba(47, 47, 47, 0.1); + padding: 10px; + margin: 10px; +} + +.users-image img { + width: 30%; + border-radius: 1000px; + border: 2px solid #4CAF50; + object-fit: cover; +} + +footer { + background-color: #333; + color: white; + text-align: center; + padding: 20px 0; +} From 034930a04c8e01d789e59db39378445fead6dbf0 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 7 May 2025 15:19:11 +0100 Subject: [PATCH 14/66] delet comments --- headers/WebservHandler.hpp | 13 ++----------- srcs/models/Webserv.cpp | 5 ++--- srcs/models/WebservHandler.cpp | 19 ++++++++++--------- 3 files changed, 14 insertions(+), 23 deletions(-) diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index d633055..cf91a46 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,22 +6,13 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/07 11:34:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 15:16:40 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once - -#include -#include -// #include -// #include -// #include -// #include -#include #include -#include #include #include #include @@ -33,7 +24,7 @@ # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 8192 -# define URL_MAX_SIZE 2048 +# define URL_MAX_SIZE 20 # define CHUNCK_SIZE 4096 typedef std::map::iterator mapIt; diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index d492f5d..4f2d10b 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/07 13:06:47 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 14:17:46 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -69,7 +69,6 @@ void Webserv::run() { } printTime(); std::cout << COL_BLUE << " Events nbr: " << this->_nbrEvents << ":" << _pollfds[i].fd << END_COL << std::endl; } - std::cout << " <<--------------------------------->> " << std::endl; //! remove this if (_pollfds[i].revents & POLLOUT) { //! Writting to client should be here //? 1. Check if client still exists in _requests @@ -185,7 +184,7 @@ void Webserv::handleClientRequest(int pollIdx, int fd) } } -void Webserv::sendResponse(int fd) +void Webserv::sendResponse(int fd) //?! Complete the request, you have to send headers, body and file { mapIt it = this->_requests.find(fd); if (it == this->_requests.end()) { diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index cc23810..db3db82 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/07 13:41:10 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 15:07:44 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -102,7 +102,7 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.isHeaderComplete = true; client.headers = client.request.substr(0, pos + 4); //! should stop at pos or pos + 4 client.request = client.request.substr(pos + 4); - std::cout << "Header complete: \n" << client.headers << std::endl; //! remove this + // std::cout << "Header complete: \n" << client.headers << std::endl; //! remove this this->setBoundary(client); client.bodyReded = client.request.size(); // std::cout << "Body readed: " << client.bodyReded << std::endl; @@ -123,13 +123,13 @@ bool WebservHandler::isRequestComplete(ClientData& client) return (true); else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { - std::cout << COL_RED << "client.contentLen: " << client.contentLen << " client.bodyReded: " << client.bodyReded << END_COL << std::endl; + // std::cout << COL_RED << "client.contentLen: " << client.contentLen << " client.bodyReded: " << client.bodyReded << END_COL << std::endl; std::cout << "Multipart form data complete" << std::endl; return (true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) return (true); - std::cout << "Request not complete" << std::endl; + // std::cout << "Request not complete" << std::endl; return (false); } @@ -138,8 +138,8 @@ bool WebservHandler::isRequestValid(ClientData& client) if (!client.isHeadersChecked) this->validateRequestHeaders(client); size_t max = client.server->getLimitClientBodySize(); - std::cout << COL_GREEN << "------------------ >> (isRequestValid....) << ----------------" << END_COL << std::endl; - std::cout << COL_MAGENTA << "Body readed: " << client.bodyReded << " & Max: " << max << std::endl; + // std::cout << COL_GREEN << "------------------ >> (isRequestValid....) << ----------------" << END_COL << std::endl; + // std::cout << COL_MAGENTA << "Body readed: " << client.bodyReded << " & Max: " << max << std::endl; (void)max; //! if bad request chunked and content length //! if bad request content length and no content @@ -166,16 +166,17 @@ void WebservHandler::setBoundary(ClientData& client) if (end == std::string::npos) return; client.boundary = client.headers.substr(start, end - start); - std::cout << "Boundary: " << client.boundary << std::endl; + // std::cout << "Boundary: " << client.boundary << std::endl; } void WebservHandler::handleRequest(ClientData& client) { if (!client.error.empty()) { send(client.fd, client.error.c_str(), client.error.size(), 0); + this->_closeClient(client.fd); return ; } - std::string exampleHtml = "

Welcome to 1337 Webserv

"; + std::string exampleHtml = "

Welcome to 1337 | testing Webserv

"; // std::string exampleHtml = "{\"message\": \"File uploaded successfully!\"}"; std::string response = "HTTP/1.1 200 OK\r\n" "Content-Type: text/html\r\n" @@ -188,7 +189,7 @@ void WebservHandler::handleRequest(ClientData& client) std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) this->requestCount++; //! increment request count (Delete this) - this->_closeClient(client.fd); + this->_closeClient(client.fd); //! Close client connection only if the response is sent } void WebservHandler::validateRequestHeaders(ClientData& client) From 81663ee46b75bcd60cf28fdb15bdae0fe2341386 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 7 May 2025 15:24:04 +0100 Subject: [PATCH 15/66] rm std:: at getCurrentTimeMs --- srcs/parsing/helpers/FtPars.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index aa685cd..ea03001 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -278,7 +278,7 @@ namespace FtPars { } size_t getCurrentTimeMs() { - std::clock_t clock_time = std::clock(); + clock_t clock_time = clock(); return static_cast(clock_time) * 1000 / CLOCKS_PER_SEC; } } From 3816d79d4e40086322cce193874c7abf41cb3dad Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 7 May 2025 19:36:46 +0100 Subject: [PATCH 16/66] fix Big buffer error --- configs/config.conf | 2 +- srcs/models/Webserv.cpp | 11 +++--- srcs/models/WebservHandler.cpp | 63 ++++++++++++++++++---------------- 3 files changed, 40 insertions(+), 36 deletions(-) diff --git a/configs/config.conf b/configs/config.conf index 7b38b7a..fadbfee 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,7 +5,7 @@ host = "127.0.0.1" port = "8080,5555" server_name = "myserver.local" -client_max_body_size = "4000" +client_max_body_size = "400000" # Timeouts IN SECONDS client_timeout = "6" redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 4f2d10b..804ad43 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/07 14:17:46 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 18:48:19 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -145,8 +145,6 @@ void Webserv::handleClientRequest(int pollIdx, int fd) { (void)pollIdx; //! delete this - - //! end delete char buffer[READ_SIZE]; ssize_t bytesRead = recv(fd, buffer, READ_SIZE - 1, 0); if (bytesRead <= 0) { //! check this @@ -160,9 +158,9 @@ void Webserv::handleClientRequest(int pollIdx, int fd) } buffer[bytesRead] = '\0'; std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this - std::cout << "Received request: \n" << buffer << std::endl; //! remove this - std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this + std::cout << "Received request: \n" << "buffer" << std::endl; //! remove this this->_requests[fd].request += buffer; + std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this std::map::iterator it = this->_requests.find(fd); if (it == this->_requests.end()) { std::cerr << "Error: client not found" << std::endl; @@ -176,8 +174,9 @@ void Webserv::handleClientRequest(int pollIdx, int fd) } if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; + std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; } - else if (this->_isRequestComplete(it->second)) { + if (this->_isRequestComplete(it->second)) { printWarning("Request Ready......................>>>>"); it->second.progress = READY; this->enablePOLLOUT(fd); diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index db3db82..4436efa 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/07 15:07:44 by ochouati ### ########.fr */ +/* Updated: 2025/05/07 18:48:58 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -46,7 +46,10 @@ void WebservHandler::setRequestType(ClientData& client) printWarning("setRequestType...."); if (client.headers.empty()) return; - if (client.headers.find("Content-Type: multipart/form-data") != std::string::npos) + //! check if the request type is already set + if (client.type != NOT_SET) + return; + else if (client.headers.find("Content-Type: multipart/form-data") != std::string::npos) client.type = MULTIPART_FORM; else if (client.headers.find("Content-Length:") != std::string::npos) client.type = CONTENT_LENGTH; @@ -54,12 +57,13 @@ void WebservHandler::setRequestType(ClientData& client) client.type = CHUNKED; else client.type = NO_CONTENT; + std::cout << COL_BLUE << "=> Request Type: " << client.type << END_COL << std::endl; } void WebservHandler::setContentLength(ClientData& client) { printWarning("setContentLength...."); - if (!client.isHeaderComplete || client.type == NO_CONTENT || client.type == CHUNKED ) + if (!client.isHeaderComplete || client.contentLen != -1 || client.type == NO_CONTENT) return; size_t contentLength = client.headers.find("Content-Length: "); if (contentLength == std::string::npos) @@ -71,25 +75,25 @@ void WebservHandler::setContentLength(ClientData& client) std::cout << "=> Content-Length: " << client.contentLen << std::endl; } -bool WebservHandler::isChunkedComplete(ClientData& client) //! will be cancelled -{ - printWarning("isChunkedComplete...."); - if (client.type != CHUNKED) - return (true); - if (client.request.size() < 5) - return false; - std::string tmp = client.request.substr(client.request.size() - 5); - if (tmp == "0\r\n\r\n") { - return true; - } - if (tmp.find("\r\n0\r\n") != std::string::npos) { - std::string trailers = client.request.substr(client.request.find("\r\n0\r\n") + 5); - if (trailers.find("\r\n") != std::string::npos) { - return true; - } - } - return false; -} +// bool WebservHandler::isChunkedComplete(ClientData& client) //! will be cancelled +// { +// printWarning("isChunkedComplete...."); +// if (client.type != CHUNKED) +// return (true); +// if (client.request.size() < 5) +// return false; +// std::string tmp = client.request.substr(client.request.size() - 5); +// if (tmp == "0\r\n\r\n") { +// return true; +// } +// if (tmp.find("\r\n0\r\n") != std::string::npos) { +// std::string trailers = client.request.substr(client.request.find("\r\n0\r\n") + 5); +// if (trailers.find("\r\n") != std::string::npos) { +// return true; +// } +// } +// return false; +// } bool WebservHandler::isHeaderComplete(ClientData& client) { @@ -117,14 +121,14 @@ bool WebservHandler::isRequestComplete(ClientData& client) this->isRequestValid(client); if (!client.isHeaderComplete) return (false); - else if (client.type == CHUNKED) //! no longer - return (isChunkedComplete(client)); + // else if (client.type == CHUNKED) //! no longer + // return (isChunkedComplete(client)); else if (client.type == NO_CONTENT && client.contentLen == -1) return (true); else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { // std::cout << COL_RED << "client.contentLen: " << client.contentLen << " client.bodyReded: " << client.bodyReded << END_COL << std::endl; - std::cout << "Multipart form data complete" << std::endl; + std::cout << COL_RED << "Multipart form data complete" << END_COL << std::endl; return (true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) @@ -135,6 +139,7 @@ bool WebservHandler::isRequestComplete(ClientData& client) bool WebservHandler::isRequestValid(ClientData& client) { + printWarning("isRequestValid...."); if (!client.isHeadersChecked) this->validateRequestHeaders(client); size_t max = client.server->getLimitClientBodySize(); @@ -186,7 +191,7 @@ void WebservHandler::handleRequest(ClientData& client) "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" // Allow specific headers "\r\n" + exampleHtml; printWarning("handleRequest...."); - std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; + // std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) this->requestCount++; //! increment request count (Delete this) this->_closeClient(client.fd); //! Close client connection only if the response is sent @@ -198,7 +203,7 @@ void WebservHandler::validateRequestHeaders(ClientData& client) return; printWarning("validate Request Headers...."); this->validateUrl(client); - // client.isHeadersChecked = true; + client.isHeadersChecked = true; } static void httpResponse414(ClientData& client) { @@ -228,13 +233,13 @@ void WebservHandler::validateUrl(ClientData& client) // 414 Request-URI Too Long (more than URL_MAX_SIZE characters) size_t start = client.headers.find_first_of("/", 0); size_t end = client.headers.find(" HTTP/1.1", start); - std::cout << "start: " << start << " end: " << end << std::endl; + // std::cout << "start: " << start << " end: " << end << std::endl; if (start == std::string::npos || end == std::string::npos) return httpResponse400(client), this->enablePOLLOUT(client.fd); std::string url = client.headers.substr(start, end - start); if (end - start > URL_MAX_SIZE) return httpResponse414(client), this->enablePOLLOUT(client.fd); - std::cout << "URL: " << url << " Lenght: " << end - start << std::endl; + // std::cout << "URL: " << url << " Lenght: " << end - start << std::endl; // 400 Bad Request url contains invalid characters if (url.find_first_not_of(ALLOWED_CHARS) != std::string::npos) return httpResponse400(client), this->enablePOLLOUT(client.fd); From c60f218a8a327bb7376ad52cb17d42481e767ac7 Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Thu, 8 May 2025 12:41:04 +0100 Subject: [PATCH 17/66] get response done --- Makefile | 2 +- configs/config.conf | 14 +-- headers/Cgi.hpp | 26 +++++ headers/Response.hpp | 5 +- headers/Server.hpp | 2 +- headers/WebservHandler.hpp | 4 +- req.rest | 2 +- srcs/models/Cgi.cpp | 140 +++++++++++++++++++++++ srcs/models/Response.cpp | 54 +++++---- srcs/{utils => models}/ResponseUtils.cpp | 3 +- srcs/models/Server.cpp | 2 +- srcs/models/WebservHandler.cpp | 24 ++-- 12 files changed, 218 insertions(+), 60 deletions(-) create mode 100644 headers/Cgi.hpp create mode 100644 srcs/models/Cgi.cpp rename srcs/{utils => models}/ResponseUtils.cpp (97%) diff --git a/Makefile b/Makefile index f46423e..d7ca01e 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,7 @@ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp SRCS += learning/request.cpp # MOAD -SRCS += srcs/models/Response.cpp srcs/utils/ResponseUtils.cpp srcs/models/MimeTypes.cpp +SRCS += srcs/models/Response.cpp srcs/models/ResponseUtils.cpp srcs/models/MimeTypes.cpp srcs/models/Cgi.cpp #OTM SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp diff --git a/configs/config.conf b/configs/config.conf index 7ba88a5..4ff999d 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -8,23 +8,23 @@ server_name = "myserver.local" client_max_body_size = "400000" # Timeouts IN SECONDS client_timeout = "6" -redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" +redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html,/folder:/new_folder" client_body_temp_path= "/var/tmp/nginx/client_body" # Default error pages error_page_404 = "/errors/404.html" error_page_500 = "/errors/500.html" # Route 1 (for path "/") -location_root = "/var/www/html" +location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" -autoindex = "off" +autoindex = "on" upload_store = "/var/www/uploads" # Route 3 (for path "/scripts") location3_path = "./scripts/php/" -location3_root = "/var/www/cgi-bin" +location3_root = "var/www/cgi-bin" location3_cgi_enable = ".php,.py" location3_cgi_path_info = "on" cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" @@ -43,7 +43,7 @@ error_page_403 = "/errors/403.html" # Route (for path "/static") location1_path = "/static" -location1_root = "/var/www/static" +location1_root = "var/www/static" allowed_methods = "GET" autoindex = "on" @@ -63,7 +63,7 @@ error_page_500 = "/errors/500.html" # Route (for path "/") location1_path = "/" -location1_root = "/var/www/app" +location1_root = "var/www/app" indexes = "home.html" allowed_methods = "GET,POST" autoindex = "off" @@ -85,7 +85,7 @@ error_page_502 = "/errors/502.html" # Route (for path "/") location1_path = "/" -location1_root = "/var/www/public" +location1_root = "var/www/public" indexes = "default.html" allowed_methods = "GET,POST,DELETE" autoindex = "on" diff --git a/headers/Cgi.hpp b/headers/Cgi.hpp new file mode 100644 index 0000000..0d5d21d --- /dev/null +++ b/headers/Cgi.hpp @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* Cgi.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mboujama +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/07 19:52:57 by mboujama #+# #+# */ +/* Updated: 2025/05/08 09:30:03 by mboujama ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../learning/request.hpp" +#include +#include + +class Cgi { + private: + char **createEnvironmentVariables(Request &request, char **systemEnv); + std::vector extractBinaryPaths(char **environmentVariables); + std::string locateExecutable(const std::vector &searchPaths, const std::string &executableName); + public: + Cgi(); + ~Cgi(); + std::string executeCgiScript(Request &request, char **systemEnv); +}; diff --git a/headers/Response.hpp b/headers/Response.hpp index 8b4a15b..b1aeabb 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/04/24 08:43:29 by mboujama ### ########.fr */ +/* Updated: 2025/05/08 07:53:03 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -16,11 +16,12 @@ # include "./WebservHandler.hpp" # include "./ResponseUtils.hpp" # include "./MimeTypes.hpp" - +# include "Cgi.hpp" class Response : public MimeTypes { private: + Cgi *cgi; Response(void); Response(const Response& obj); Response& operator=(const Response& obj); diff --git a/headers/Server.hpp b/headers/Server.hpp index 4f55a7f..583c394 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -81,7 +81,7 @@ class Server { const std::vector& getPorts(void) const; bool getEnableUploads(void) const; int getSocket() const; - const std::map& getRedirects(void) const; + std::map& getRedirects(void); const std::string& getCGI(std::string& val) const; const std::map& getCGIs() const; //? Setters diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 0cc63af..0af0d24 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/07 19:45:12 by mboujama ### ########.fr */ +/* Updated: 2025/05/08 09:41:10 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -24,7 +24,7 @@ # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 8192 -# define URL_MAX_SIZE 20 +# define URL_MAX_SIZE 200 # define CHUNCK_SIZE 4096 typedef std::map::iterator mapIt; diff --git a/req.rest b/req.rest index c92490f..20c6e1e 100644 --- a/req.rest +++ b/req.rest @@ -5,5 +5,5 @@ Connection: "keep-alive" ### #GET -GET http://127.0.0.1:9090 HTTP/1.1 +GET http://localhost:8080/test.py HTTP/1.1 Content-Type: "text/html" diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp new file mode 100644 index 0000000..e28b0fc --- /dev/null +++ b/srcs/models/Cgi.cpp @@ -0,0 +1,140 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* Cgi.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mboujama +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/07 19:52:42 by mboujama #+# #+# */ +/* Updated: 2025/05/08 11:31:01 by mboujama ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../../headers/Cgi.hpp" + +// SCRIPT_FILENAME – hold the executeble file path +// REQUEST_METHOD – hold the method name +// CONTENT_TYPE – e.g., application/json, multipart/form-data +// CONTENT_LENGTH – Number of bytes in the request body +// QUERY_STRING – For GET requests, the URL parameters +// HTTP_ + header name – Standard headers get converted into environment variables +// HTTP_USER_AGENT → User-Agent: Mozilla/5.0 +// HTTP_HOST → Host: example.com + +Cgi::Cgi() {} + +Cgi::~Cgi() {} + +char **Cgi::createEnvironmentVariables(Request &request, char **systemEnv) +{ + size_t systemEnvCount = 0; + while (systemEnv[systemEnvCount]) + ++systemEnvCount; + + char **envVariables = new char *[systemEnvCount + request.getEnvSize()]; // free this + size_t index = 0; + + while (systemEnv[index]) + { + envVariables[index] = strdup(systemEnv[index]); + ++index; + } + + for (size_t j = 0; !request.getEnv(j).empty(); ++j) + envVariables[index++] = strdup(request.getEnv(j).c_str()); + + envVariables[index] = NULL; + return envVariables; +} + +std::vector Cgi::extractBinaryPaths(char **environmentVariables) +{ + std::vector binaryPaths; + for (size_t i = 0; environmentVariables[i]; ++i) + { + std::string envEntry = environmentVariables[i]; + if (envEntry.compare(0, 5, "PATH=") == 0) + { + size_t startPos = 5; + size_t delimiterPos; + while (true) + { + delimiterPos = envEntry.find_first_of(":", startPos); + if (delimiterPos == std::string::npos) + break; + binaryPaths.push_back(envEntry.substr(startPos, delimiterPos - startPos)); + startPos = delimiterPos + 1; + } + binaryPaths.push_back(envEntry.substr(startPos)); + break; + } + } + return binaryPaths; +} + +std::string Cgi::locateExecutable(const std::vector &searchPaths, const std::string &executableName) +{ + for (size_t i = 0; i < searchPaths.size(); ++i) + { + std::string fullPath = searchPaths[i] + "/" + executableName; + if (access(fullPath.c_str(), X_OK) == 0) + return fullPath; + } + return ""; +} + +std::string Cgi::executeCgiScript(Request &request, char **systemEnv) +{ + char **envVariables = createEnvironmentVariables(request, systemEnv); + std::vector binaryPaths = extractBinaryPaths(systemEnv); + std::string scriptExtension; + std::string interpreterPath; + size_t extensionPos; + std::string file; + extensionPos = request.getPath().find_last_of("."); + if (extensionPos != std::string::npos) + scriptExtension = request.getPath().substr(extensionPos); + else + scriptExtension = ""; + if (scriptExtension == ".php") + interpreterPath = locateExecutable(binaryPaths, "php"); + else if (scriptExtension == ".py") + interpreterPath = locateExecutable(binaryPaths, "python3"); + + int pipeFd[2]; + if (pipe(pipeFd) < 0) + std::cerr << "Error: pipe creation failed\n"; + pid_t processId = fork(); + if (processId == 0) + { + close(pipeFd[0]); + dup2(pipeFd[1], STDOUT_FILENO); + dup2(pipeFd[1], STDERR_FILENO); + close(pipeFd[1]); + + std::string fullpath = "var/www/html" + request.getPath(); + char *arguments[3] = {strdup(interpreterPath.c_str()), strdup(fullpath.c_str()), NULL}; + execve(arguments[0], arguments, envVariables); + std::cerr << "Error: execve failed\n"; + } + else if (processId > 0) + { + close(pipeFd[1]); + char outputBuffer[1024]; + ssize_t bytesRead; + while ((bytesRead = read(pipeFd[0], outputBuffer, sizeof(outputBuffer) - 1)) > 0) + { + outputBuffer[bytesRead] = '\0'; + file += outputBuffer; + } + close(pipeFd[0]); + waitpid(processId, NULL, 0); + } + else + exit(EXIT_FAILURE); + // !! waaaaaa abadelaziz + // for(size_t i = 0; envVariables[i]; ++i) + // delete envVariables[i]; + // delete[] envVariables; + return file; +} diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d329f69..a8d3219 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,13 +6,12 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/04/24 12:18:14 by mboujama ### ########.fr */ +/* Updated: 2025/05/08 11:35:05 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" - Response::Response(void) {} Response::~Response(void) {} @@ -44,10 +43,8 @@ std::string Response::combineResponse(void) { } Response::Response(struct ClientData &client, Request &req) { - std::string root_path = "/Users/mboujama/Desktop/webserv/var/www/html"; - //? root path for linux: - // std::string root_path = "/home/mmboujamaa/Main/1337/1337-webserv/var/www/html"; - std::string full_path = root_path + req.getPath(); + cgi = new Cgi(); + std::string full_path = client.server->getRootPath() + req.getPath(); http_version = req.getVersion(); headers["Server"] = "NorthServ/1.0"; @@ -56,11 +53,15 @@ Response::Response(struct ClientData &client, Request &req) { headers["Date"] = ResponseUtils::getDateTime(); fd = -1; - //TODO: add checkRedirect: if (full_path.find("..") != std::string::npos) status_code = FORBIDDEN; else if (!client.server->getAllowedMethods()[req.getMethod()]) status_code = METHOD_NOT_ALLOWED; + else if (!client.server->getRedirects()[req.getPath()].empty()) + { + status_code = MOVED_PERMANENTLY; + headers["location"] = client.server->getRedirects()[req.getPath()]; + } else if (!ResponseUtils::pathExists(full_path)) status_code = NOT_FOUND; else if (req.getMethod() == "GET") @@ -74,7 +75,8 @@ Response::Response(struct ClientData &client, Request &req) { // 30x case MOVED_PERMANENTLY: std::cout << "MOVED PERMANENTLY" << std::endl; - body = "

301 Moved Permanently

"; + if (body.empty()) + body = "

301 Moved Permanently

"; headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; // 40x @@ -99,12 +101,14 @@ Response::Response(struct ClientData &client, Request &req) { headers["Content-Length"] = ResponseUtils::toString(body.length()); status_code = OK; } - std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; } void Response::handleGet(struct ClientData &client, Request &req, const std::string &path) { + bool isFile = true; + std::string index; + if (path.find("..") != std::string::npos) { status_code = FORBIDDEN; return; } @@ -115,32 +119,26 @@ void Response::handleGet(struct ClientData &client, Request &req, const std::str return ; } + isFile = false; std::map indexes = client.server->getIndexes(); - std::string index = ResponseUtils::isIndexFileExist(indexes, path); + index = ResponseUtils::isIndexFileExist(indexes, path); - if (!index.empty()) { - // TODO: check cgi - fd = ResponseUtils::openFile(path + index); - fd == -1 ? status_code = FORBIDDEN : status_code = OK; - return ; - } - // TODO: 2.3 - if autoindex enabled show it (200) otherwise (403) + if (!index.empty()) isFile = true; else if (client.server->getAutoIndex()) { - std::cout << "Autoindex enabled" << std::endl; body = ResponseUtils::generateAutoIndex(path); status_code = OK; } - else { - std::cout << "Autoindex disabled" << std::endl; - status_code = FORBIDDEN; - } + else status_code = FORBIDDEN; } - else { - headers["Content-Type"] = getMimeType(path); - - std::cout << "Extension: " << headers["Content-Type"] << std::endl; - // TODO: 3- if file serve it (CGI || 200) - std::cout << "this is a file" << std::endl; + if (isFile) { + if (!path.substr(path.find_last_of('.')).compare(".py") + || !path.substr(path.find_last_of('.')).compare(".php")) + body = cgi->executeCgiScript(req, serverEnv); + else { + !index.empty() + ? fd = ResponseUtils::openFile(req.getPath() + index) + : fd = ResponseUtils::openFile(path); + } } } diff --git a/srcs/utils/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp similarity index 97% rename from srcs/utils/ResponseUtils.cpp rename to srcs/models/ResponseUtils.cpp index 9b0ee8c..4384429 100644 --- a/srcs/utils/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/04/26 09:13:42 by mboujama ### ########.fr */ +/* Updated: 2025/05/07 20:03:13 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -40,7 +40,6 @@ std::string ResponseUtils::allowHeaderValue(std::map allowedM } bool ResponseUtils::pathExists(const std::string& path) { - std::cout << "Path to search: " << path << std::endl; return access(path.c_str(), F_OK) == 0; } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index f8e31d4..04204c1 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -231,7 +231,7 @@ int Server::getSocket() const return (this->serverSocket); } -const std::map& Server::getRedirects(void) const +std::map& Server::getRedirects(void) { return (this->redirects); } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index de23cf7..a3b0766 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,17 +6,19 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/07 19:45:22 by mboujama ### ########.fr */ +/* Updated: 2025/05/07 20:27:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/WebservHandler.hpp" +#include "./../../headers/Response.hpp" #include #include #include #include #include #include +#include "../../learning/request.hpp" int WebservHandler::requestCount = 0; @@ -181,20 +183,12 @@ void WebservHandler::handleRequest(ClientData& client) this->_closeClient(client.fd); return ; } - std::string exampleHtml = "

Welcome to 1337 | testing Webserv

"; - // std::string exampleHtml = "{\"message\": \"File uploaded successfully!\"}"; - std::string response = "HTTP/1.1 200 OK\r\n" - "Content-Type: text/html\r\n" - "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" - "Access-Control-Allow-Origin: *\r\n" // Allow requests from any origin - "Access-Control-Allow-Methods: POST, GET, OPTIONS\r\n" // Allow specific methods - "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" // Allow specific headers - "\r\n" + exampleHtml; - printWarning("handleRequest...."); - // std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; - send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) - this->requestCount++; //! increment request count (Delete this) - this->_closeClient(client.fd); //! Close client connection only if the response is sent + Request req(client.headers + client.request); + Response *response = new Response(client, req); //! free this + + std::string res = response->combineResponse(); + std::cout << "=======>\n" << res << "\n<=======" << std::endl; + send(client.fd, res.c_str(), res.size(), 0); } void WebservHandler::validateRequestHeaders(ClientData& client) From 208feda301773170081670873f59a9bdc269688c Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Thu, 8 May 2025 19:56:37 +0100 Subject: [PATCH 18/66] Error at events(socket) --- Makefile | 5 ++- configs/config.conf | 23 ++++++------ headers/ClientData.hpp | 4 +- headers/HttpErrors.hpp | 22 +++++++++++ headers/WebservHandler.hpp | 12 ++++-- main.cpp | 1 + srcs/models/Upload.cpp | 5 +++ srcs/models/Webserv.cpp | 19 ++++++---- srcs/models/WebservHandler.cpp | 62 ++++++------------------------- srcs/utils/httpResponseErrors.cpp | 48 ++++++++++++++++++++++++ upload_delete.cpp | 49 ++++++++++++++++++++++++ 11 files changed, 173 insertions(+), 77 deletions(-) create mode 100644 headers/HttpErrors.hpp create mode 100644 srcs/utils/httpResponseErrors.cpp create mode 100644 upload_delete.cpp diff --git a/Makefile b/Makefile index 7cb8a0c..add63ce 100644 --- a/Makefile +++ b/Makefile @@ -5,10 +5,11 @@ NAME=webserv # OTM SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ -srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp +srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ +srcs/utils/httpResponseErrors.cpp # ACHAKKAF -SRCS += srcs/cgi/ft_cgi.cpp +SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp # MOAD SRCS += diff --git a/configs/config.conf b/configs/config.conf index fadbfee..df23a04 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -2,31 +2,32 @@ # Server 1: Default server ############################################################################### [server.default] +# required host = "127.0.0.1" +# required port = "8080,5555" +# required server_name = "myserver.local" -client_max_body_size = "400000" +# optional +client_max_body_size = "40000000" # Timeouts IN SECONDS +# optional client_timeout = "6" +# optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" +# optional client_body_temp_path= "/var/tmp/nginx/client_body" # Default error pages +# optional error_page_404 = "/errors/404.html" +# optional error_page_500 = "/errors/500.html" -# Route 1 (for path "/") location_root = "/var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "off" -upload_store = "/var/www/uploads" - - -# Route 3 (for path "/scripts") -location3_path = "./scripts/php/" -location3_root = "/var/www/cgi-bin" -location3_cgi_enable = ".php,.py" -location3_cgi_path_info = "on" +upload_store = "var/www/uploads" cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" @@ -52,7 +53,7 @@ autoindex = "on" # Server 3 ############################################################################### [server.third] -host = "10.12.5.9" +host = "127.0.0.1" port = "8081" server_name = "third-server.local" client_max_body_size = "2097152" diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index f3dfdc0..59c6915 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/07 11:35:17 by ochouati ### ########.fr */ +/* Updated: 2025/05/08 16:56:56 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -54,6 +54,6 @@ struct ClientData { ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), isHeadersChecked(false), file(-1), server(NULL), bodyReded(-1), progress(NOT_STARTED), - startTime(FtPars::getCurrentTimeMs()) {} + startTime(FtPars::getCurrentTimeMs()), currentFileFd(-1) {} ~ClientData() {} }; diff --git a/headers/HttpErrors.hpp b/headers/HttpErrors.hpp new file mode 100644 index 0000000..105528b --- /dev/null +++ b/headers/HttpErrors.hpp @@ -0,0 +1,22 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* HttpErrors.hpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/08 15:20:55 by ochouati #+# #+# */ +/* Updated: 2025/05/08 15:25:54 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#pragma once +#include "WebservHandler.hpp" + +class WebservHandler; +class HttpErrors { + public: + static void httpResponse400(ClientData& client); + static void httpResponse414(ClientData& client); + static void httpResponse413(ClientData& client); +}; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index cf91a46..71ba963 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/07 15:16:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/08 18:40:55 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,18 +17,20 @@ #include #include #include -#include "debug.hpp" #include "ClientData.hpp" +#include "HttpErrors.hpp" +#include "debug.hpp" # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 8192 +# define READ_SIZE 1024 # define URL_MAX_SIZE 20 # define CHUNCK_SIZE 4096 +void processMultipartUpload(ClientData &client); typedef std::map::iterator mapIt; - +class HttpErrors; class WebservHandler { protected: @@ -55,3 +57,5 @@ class WebservHandler ~WebservHandler(); }; + +extern WebservHandler *wServ; diff --git a/main.cpp b/main.cpp index f256a66..b6d627c 100644 --- a/main.cpp +++ b/main.cpp @@ -25,6 +25,7 @@ char **serverEnv; std::string *notFound; +WebservHandler *wServ; void ll(){ //! DELETE ME system("leaks webserv"); diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index f9156de..3c08b8c 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -78,6 +78,9 @@ std::string getFileName(const std::string &buffer){ // You should put all tmp files in a temp folder void processMultipartUpload(ClientData &client) { + std::cout << COL_MAGENTA << "==================================================...." << END_COL << std::endl; + std::cout << COL_MAGENTA << "processMultipartUpload...." << END_COL << std::endl; + std::cout << COL_MAGENTA << "==================================================...." << END_COL << std::endl; ssize_t written; while(!client.request.empty()) { if (client.currentFileFd == -1){ @@ -103,7 +106,9 @@ void processMultipartUpload(ClientData &client) written = write(client.currentFileFd, client.request.c_str(), boundary > 2 ? boundary - 2: 0); + std::cout << COL_RED << "Written......... (" << written << ")" << END_COL << std::endl; if (written == -1){ + std::cout << COL_RED << "Written 2......... " << END_COL << std::endl; close(client.currentFileFd); client.currentFileFd = -1; return; diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 804ad43..474d3ca 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/07 18:48:19 by ochouati ### ########.fr */ +/* Updated: 2025/05/08 18:57:10 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -54,6 +54,7 @@ void Webserv::run() { continue; } for (size_t i = 0; i < _pollfds.size() && this->_nbrEvents > 0; ++i) { + std::cout << COL_BLUE << "Pollfd: " << _pollfds[i].fd << " Events: " << _pollfds[i].revents << END_COL << std::endl; if (_pollfds[i].revents & (POLLERR | POLLHUP)) { if (!isServerSocket(_pollfds[i].fd)) this->_closeClient(_pollfds[i].fd); @@ -90,11 +91,14 @@ Server* Webserv::getServerByFd(int fd) { } bool Webserv::_isRequestComplete(ClientData& client) { + if (client.progress == READY) + return (true); if (!client.isHeaderComplete) { this->isHeaderComplete(client); } this->setRequestType(client); this->setContentLength(client); + this->setBoundary(client); //! Validate request //! ... return (this->isRequestComplete(client)); @@ -112,6 +116,7 @@ void Webserv::acceptNewConnection(int fd) { std::cout << "(" << fd << ")"<< " accepting new connection..." << std::endl; ClientData newClient; + // newClient.webservHandler = this; try { Server *srv = this->getServerByFd(fd); std::cout << "server port: " << srv->getPort() << "Server name: " << srv->getserverName() << std::endl; @@ -137,21 +142,19 @@ void Webserv::acceptNewConnection(int fd) } } -//! Handle Client Request -//! 1. Read request from socket to buffer -//! 2. Append buffer to request -//! 3. Check if request is complete void Webserv::handleClientRequest(int pollIdx, int fd) { - (void)pollIdx; + std::cout << COL_BLUE << "Handling client request..." << END_COL << std::endl; //! delete this + (void)pollIdx; char buffer[READ_SIZE]; ssize_t bytesRead = recv(fd, buffer, READ_SIZE - 1, 0); - if (bytesRead <= 0) { //! check this + std::cout << COL_BLUE << "Bytes read: " << bytesRead << END_COL << std::endl; + if (bytesRead < 0) { //! check this if (bytesRead == 0) { std::cout << "Client disconnected" << std::endl; } else { - std::cerr << "Error while reading from client" << std::endl; + std::cerr << COL_RED << "Error while reading from client" << END_COL << std::endl; } this->_closeClient(fd); return; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 4436efa..eade90c 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/07 18:48:58 by ochouati ### ########.fr */ +/* Updated: 2025/05/08 17:49:22 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -21,6 +21,7 @@ int WebservHandler::requestCount = 0; WebservHandler::WebservHandler() { + wServ = this; } WebservHandler::~WebservHandler() { @@ -75,26 +76,6 @@ void WebservHandler::setContentLength(ClientData& client) std::cout << "=> Content-Length: " << client.contentLen << std::endl; } -// bool WebservHandler::isChunkedComplete(ClientData& client) //! will be cancelled -// { -// printWarning("isChunkedComplete...."); -// if (client.type != CHUNKED) -// return (true); -// if (client.request.size() < 5) -// return false; -// std::string tmp = client.request.substr(client.request.size() - 5); -// if (tmp == "0\r\n\r\n") { -// return true; -// } -// if (tmp.find("\r\n0\r\n") != std::string::npos) { -// std::string trailers = client.request.substr(client.request.find("\r\n0\r\n") + 5); -// if (trailers.find("\r\n") != std::string::npos) { -// return true; -// } -// } -// return false; -// } - bool WebservHandler::isHeaderComplete(ClientData& client) { printWarning("isHeaderComplete...."); @@ -106,8 +87,8 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.isHeaderComplete = true; client.headers = client.request.substr(0, pos + 4); //! should stop at pos or pos + 4 client.request = client.request.substr(pos + 4); - // std::cout << "Header complete: \n" << client.headers << std::endl; //! remove this - this->setBoundary(client); + std::cout << "Header complete: \n" << COL_MAGENTA << client.headers << END_COL << std::endl; //! remove this + // this->setBoundary(client); client.bodyReded = client.request.size(); // std::cout << "Body readed: " << client.bodyReded << std::endl; return (true); @@ -121,9 +102,8 @@ bool WebservHandler::isRequestComplete(ClientData& client) this->isRequestValid(client); if (!client.isHeaderComplete) return (false); - // else if (client.type == CHUNKED) //! no longer - // return (isChunkedComplete(client)); - else if (client.type == NO_CONTENT && client.contentLen == -1) + processMultipartUpload(client); + if (client.type == NO_CONTENT && client.contentLen == -1) return (true); else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { @@ -152,6 +132,7 @@ bool WebservHandler::isRequestValid(ClientData& client) //! if content length more than server limit if (client.bodyReded > static_cast(max)) { + HttpErrors::httpResponse413(client); std::cout << COL_RED << "Request body size exceeds server limit" << END_COL << std::endl; return (false); } @@ -163,6 +144,7 @@ void WebservHandler::setBoundary(ClientData& client) { if (!client.isHeaderComplete || client.type != MULTIPART_FORM || !client.boundary.empty()) return; + std::cout << COL_MAGENTA << "setBoundary...." << END_COL << std::endl; size_t pos = client.headers.find("boundary="); if (pos == std::string::npos) return; @@ -171,7 +153,7 @@ void WebservHandler::setBoundary(ClientData& client) if (end == std::string::npos) return; client.boundary = client.headers.substr(start, end - start); - // std::cout << "Boundary: " << client.boundary << std::endl; + std::cout << "*>> Boundary: " << client.boundary << std::endl; } void WebservHandler::handleRequest(ClientData& client) @@ -206,27 +188,7 @@ void WebservHandler::validateRequestHeaders(ClientData& client) client.isHeadersChecked = true; } -static void httpResponse414(ClientData& client) { - (void)client; - std::string response = "HTTP/1.1 414 Request-URI Too Long\r\n" - "Content-Type: text/html\r\n" - "Content-Length: 59\r\n" - "\r\n

414 Request-URI Too Long

"; - std::cout << COL_RED << response << END_COL << std::endl; - client.error = response; - client.progress = READY; -} -static void httpResponse400(ClientData& client) { - (void)client; - std::string response = "HTTP/1.1 400 Bad Request\r\n" - "Content-Type: text/html\r\n" - "Content-Length: 50\r\n" - "\r\n

400 Bad Request

"; - std::cout << COL_RED << response << END_COL << std::endl; - client.error = response; - client.progress = READY; -} void WebservHandler::validateUrl(ClientData& client) { @@ -235,14 +197,14 @@ void WebservHandler::validateUrl(ClientData& client) size_t end = client.headers.find(" HTTP/1.1", start); // std::cout << "start: " << start << " end: " << end << std::endl; if (start == std::string::npos || end == std::string::npos) - return httpResponse400(client), this->enablePOLLOUT(client.fd); + return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); std::string url = client.headers.substr(start, end - start); if (end - start > URL_MAX_SIZE) - return httpResponse414(client), this->enablePOLLOUT(client.fd); + return HttpErrors::httpResponse414(client), this->enablePOLLOUT(client.fd); // std::cout << "URL: " << url << " Lenght: " << end - start << std::endl; // 400 Bad Request url contains invalid characters if (url.find_first_not_of(ALLOWED_CHARS) != std::string::npos) - return httpResponse400(client), this->enablePOLLOUT(client.fd); + return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); } diff --git a/srcs/utils/httpResponseErrors.cpp b/srcs/utils/httpResponseErrors.cpp new file mode 100644 index 0000000..953963f --- /dev/null +++ b/srcs/utils/httpResponseErrors.cpp @@ -0,0 +1,48 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* httpResponseErrors.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/08 14:10:39 by ochouati #+# #+# */ +/* Updated: 2025/05/08 16:31:01 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "./../../headers/HttpErrors.hpp" +#include +#include + +void HttpErrors::httpResponse414(ClientData& client) { + std::string response = "HTTP/1.1 414 Request-URI Too Long\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 59\r\n" + "\r\n

414 Request-URI Too Long

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; + wServ->enablePOLLOUT(client.fd); +} + +void HttpErrors::httpResponse400(ClientData& client) { + std::string response = "HTTP/1.1 400 Bad Request\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 50\r\n" + "\r\n

400 Bad Request

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; + wServ->enablePOLLOUT(client.fd); +} + +void HttpErrors::httpResponse413(ClientData& client) { + std::string response = "HTTP/1.1 413 Payload Too Large\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 56\r\n" + "\r\n

413 Payload Too Large

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; + wServ->enablePOLLOUT(client.fd); +} diff --git a/upload_delete.cpp b/upload_delete.cpp new file mode 100644 index 0000000..42f504f --- /dev/null +++ b/upload_delete.cpp @@ -0,0 +1,49 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* delete.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/04/20 16:18:20 by ochouati #+# #+# */ +/* Updated: 2025/04/23 13:01:56 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include +#include + +void deleteFile(const std::string& path) +{ + if (std::remove(path.c_str()) != 0) + std::cerr << "Error deleting file: " << path << std::endl; +} + +void deleteFolder(const std::string& path) +{ + DIR* dir = opendir(path.c_str()); + + if (!dir) + { + std::cerr << "Error opening directory: " << path << std::endl; + return; + } + struct dirent* entry; + while ((entry = readdir(dir)) != NULL) + { + if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") + continue; + std::string filePath = path + "/" + entry->d_name; + if (entry->d_type == DT_DIR) + deleteFolder(filePath); + else + deleteFile(filePath); + } + closedir(dir); + if (std::remove(path.c_str()) != 0) + std::cerr << "Error deleting directory: " << path << std::endl; +} + +int main() { + deleteFolder("./myfld"); +} From ef272cd8a008b2bc2c73e1fc73b9cd302d4c7e84 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Fri, 9 May 2025 18:23:11 +0100 Subject: [PATCH 19/66] no boundrey at the end of file, and no infinate loops --- srcs/models/Upload.cpp | 47 ++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 3c08b8c..6e91cc7 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -1,4 +1,5 @@ #include "./../../headers/Webserv.hpp" +#include #include #include #include @@ -61,7 +62,7 @@ /// get file name from a buffer request std::string getFileName(const std::string &buffer){ - std::string fileName; + std::string fileName; size_t i = buffer.find("filename=\""); if (i != std::string::npos) { for (i = i + 10; buffer[i] != '"' && buffer[i] ; ++i){ @@ -73,14 +74,12 @@ std::string getFileName(const std::string &buffer){ return fileName; } -//! - add temp file to temp folder -//! - add copy the fie from temp folder to the corant folder + +//! set client.currentFileFd to -1 +//! call setheader() function (I am not sure about the function name) // You should put all tmp files in a temp folder void processMultipartUpload(ClientData &client) { - std::cout << COL_MAGENTA << "==================================================...." << END_COL << std::endl; - std::cout << COL_MAGENTA << "processMultipartUpload...." << END_COL << std::endl; - std::cout << COL_MAGENTA << "==================================================...." << END_COL << std::endl; ssize_t written; while(!client.request.empty()) { if (client.currentFileFd == -1){ @@ -100,32 +99,36 @@ void processMultipartUpload(ClientData &client) return; } - size_t boundary = client.request.find("--" + client.boundary); - if (boundary != std::string::npos) { - if (client.currentFileFd != -1){ - written = write(client.currentFileFd, - client.request.c_str(), - boundary > 2 ? boundary - 2: 0); - std::cout << COL_RED << "Written......... (" << written << ")" << END_COL << std::endl; - if (written == -1){ - std::cout << COL_RED << "Written 2......... " << END_COL << std::endl; + if (client.request.rfind("\r") != std::string::npos){ + size_t boundaryPos = client.request.find("--" + client.boundary); + // std::cout << COL_RED << client.request << " " << boundaryPos << END_COL<< std::endl; + if (boundaryPos != std::string::npos) { + if (client.currentFileFd != -1){ + written = write(client.currentFileFd, + client.request.c_str(), + boundaryPos > 2 ? boundaryPos - 2: 0); + if (written == -1){ + close(client.currentFileFd); + client.currentFileFd = -1; + return; + } + } + if(client.request.find("--" + client.boundary + "--") != std::string::npos){ close(client.currentFileFd); client.currentFileFd = -1; - return; } + client.request.erase(0, boundaryPos); + continue; } - if(client.request.find("--" + client.boundary + "--") != std::string::npos){ - close(client.currentFileFd); - client.currentFileFd = -1; - } - client.request.erase(0, boundary); - continue; + else + return; } if (client.currentFileFd != -1) { written = write(client.currentFileFd, client.request.c_str(), client.request.size()); + // std::cout << client.request << std::endl; if (written == -1){ close(client.currentFileFd); client.currentFileFd = -1; From 2a78532160ed93c970ce2aefb97da82dc796e7d7 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Fri, 9 May 2025 20:30:30 +0100 Subject: [PATCH 20/66] Finally upload is working --- .gitignore | 4 +- configs/config.conf | 4 +- headers/WebservHandler.hpp | 4 +- run.sh | 4 ++ srcs/models/Upload.cpp | 3 +- srcs/models/Webserv.cpp | 6 +- srcs/models/WebservHandler.cpp | 8 ++- upload_delete.cpp | 49 -------------- upload_main.cpp | 116 +++++++++++++++++++++++++++++++++ 9 files changed, 138 insertions(+), 60 deletions(-) delete mode 100644 upload_delete.cpp create mode 100644 upload_main.cpp diff --git a/.gitignore b/.gitignore index d61ac65..f664b58 100644 --- a/.gitignore +++ b/.gitignore @@ -25,7 +25,9 @@ labs/app *.dylib *.dll *.zip - +uploadtestfile.txt +uploadtestfile.cpp +.DS_Store # Fortran module files *.mod *.smod diff --git a/configs/config.conf b/configs/config.conf index df23a04..3b48496 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -9,10 +9,10 @@ port = "8080,5555" # required server_name = "myserver.local" # optional -client_max_body_size = "40000000" +client_max_body_size = "40000000000" # Timeouts IN SECONDS # optional -client_timeout = "6" +client_timeout = "600" # optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # optional diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 71ba963..2bebc20 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/08 18:40:55 by ochouati ### ########.fr */ +/* Updated: 2025/05/09 19:06:33 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -24,7 +24,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 1024 +# define READ_SIZE 4096 # define URL_MAX_SIZE 20 # define CHUNCK_SIZE 4096 diff --git a/run.sh b/run.sh index 138a6d5..11e42fc 100755 --- a/run.sh +++ b/run.sh @@ -1,4 +1,8 @@ #!/bin/bash echo "🧪Starting Compiling🛠 files📁.🔋.🔋." +rm upload_*.zip* +rm "upload_uploadtestfile.txt " +rm upload_testzzzzzippp.zip* +rm upload_arch01.zip sleep 0.4 make -j 10 && clear && ./webserv configs/config.conf diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 6e91cc7..fb5e50c 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -99,6 +99,7 @@ void processMultipartUpload(ClientData &client) return; } + std::cout << COL_RED << "uploading..." << END_COL << std::endl; if (client.request.rfind("\r") != std::string::npos){ size_t boundaryPos = client.request.find("--" + client.boundary); // std::cout << COL_RED << client.request << " " << boundaryPos << END_COL<< std::endl; @@ -117,7 +118,7 @@ void processMultipartUpload(ClientData &client) close(client.currentFileFd); client.currentFileFd = -1; } - client.request.erase(0, boundaryPos); + client.request.erase(0, boundaryPos + client.boundary.size() + 2); continue; } else diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 474d3ca..4918423 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/08 18:57:10 by ochouati ### ########.fr */ +/* Updated: 2025/05/09 20:26:54 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -160,9 +160,9 @@ void Webserv::handleClientRequest(int pollIdx, int fd) return; } buffer[bytesRead] = '\0'; - std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this std::cout << "Received request: \n" << "buffer" << std::endl; //! remove this - this->_requests[fd].request += buffer; + // this->_requests[fd].request += buffer; + this->_requests[fd].request.append(buffer, bytesRead); std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this std::map::iterator it = this->_requests.find(fd); if (it == this->_requests.end()) { diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index eade90c..64ec7bd 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/08 17:49:22 by ochouati ### ########.fr */ +/* Updated: 2025/05/09 20:04:41 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -88,9 +88,13 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.headers = client.request.substr(0, pos + 4); //! should stop at pos or pos + 4 client.request = client.request.substr(pos + 4); std::cout << "Header complete: \n" << COL_MAGENTA << client.headers << END_COL << std::endl; //! remove this + std::cout << COL_GREEN << "Header size: " << client.headers.size() << END_COL << std::endl; // this->setBoundary(client); client.bodyReded = client.request.size(); - // std::cout << "Body readed: " << client.bodyReded << std::endl; + std::cout << "*-> Body readed: " << client.bodyReded << std::endl; + std::cout << COL_GREEN << "Request: \n" << client.request << END_COL << std::endl; + std::cout << COL_GREEN << "Request size: " << client.request.size() << "\n\n" << END_COL << std::endl; + return (true); } return (false); diff --git a/upload_delete.cpp b/upload_delete.cpp deleted file mode 100644 index 42f504f..0000000 --- a/upload_delete.cpp +++ /dev/null @@ -1,49 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* delete.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/04/20 16:18:20 by ochouati #+# #+# */ -/* Updated: 2025/04/23 13:01:56 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include -#include - -void deleteFile(const std::string& path) -{ - if (std::remove(path.c_str()) != 0) - std::cerr << "Error deleting file: " << path << std::endl; -} - -void deleteFolder(const std::string& path) -{ - DIR* dir = opendir(path.c_str()); - - if (!dir) - { - std::cerr << "Error opening directory: " << path << std::endl; - return; - } - struct dirent* entry; - while ((entry = readdir(dir)) != NULL) - { - if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") - continue; - std::string filePath = path + "/" + entry->d_name; - if (entry->d_type == DT_DIR) - deleteFolder(filePath); - else - deleteFile(filePath); - } - closedir(dir); - if (std::remove(path.c_str()) != 0) - std::cerr << "Error deleting directory: " << path << std::endl; -} - -int main() { - deleteFolder("./myfld"); -} diff --git a/upload_main.cpp b/upload_main.cpp new file mode 100644 index 0000000..ece3c12 --- /dev/null +++ b/upload_main.cpp @@ -0,0 +1,116 @@ +#include +#include +#include +#include +#include +#include "request.hpp" + +#define PORT 8080 + +void executeCgiScript(Request&, char**); + +void leaks(void) { + system("leaks -q a.out"); +} +int main(int ac, char** av, char **env) +{ + // atexit(leaks); + std::string req = + "POST tst.py?name=achakkaf&filetype=.c HTTP/1.1\r\n" + "Host: localhost\r\n" + "Connection: close\r\n" + "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary12345\r\n" + "Content-Length: 173\r\n" + "\r\n" + "------WebKitFormBoundary12345\r\n" + "Content-Disposition: form-data; name=\"field1\"\r\n" + "\r\n" + "Hello, World!\r\n" + "------WebKitFormBoundary12345\r\n" + "Content-Disposition: form-data; name=\"field2\"; filename=\"example.txt\"\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "File content here...\r\n" + "------WebKitFormBoundary12345--\r\n"; + Request r(req); + + // std::cout << "Method: " << r.getMethod() << std::endl; + // std::cout << "path: " << r.getPath() << std::endl; + // for (size_t i = 0; i < r.getQuerySize(); ++i) + // std::cout << r.getQuery(i) << std::endl; + // std::cout << "query: " << r.getQuery() << std::endl; + // std::cout << "version: " << r.getVersion() << std::endl; + // r.printHeaders(); + // std::cout << "body |" << r.getBody() << "|" << std::endl + std::cout << "ENV:\n"; + // for (size_t i = 0; i < r.getEnvSize() ; ++i) std::cout << r.getEnv(i) << std::endl; + executeCgiScript(r, env); + + // int socketFd = socket(AF_INET, SOCK_STREAM, 0); + // std::cerr << "socket number: " << socketFd << std::endl; + + // struct sockaddr_in address; + // address.sin_family = AF_INET; + // address.sin_addr.s_addr = INADDR_ANY; + // address.sin_port = htons(PORT); + + // bind(socketFd, (struct sockaddr *)&address, sizeof(address)); + // listen(socketFd, 5); + // // std::cout << "Server is listening on port " << PORT << std::endl; + + // socklen_t addrlen = sizeof(address); + // int new_socket; + // char buffer[204800]; + // // Accept a connection + // const char *http_response = + // "HTTP/1.1 200 OK\r\n" + // "Content-Type: text/html\r\n" + // "Content-Length: 311\r\n" + // "Connection: close\r\n\r\n" + // "\n" + // "\n" + // "\n" + // " \n" + // " \n" + // " Simple Webpage\n" + // "\n" + // "\n" + // "

Welcome to My Simple Webpage

\n" + // "

This is a basic webpage served from C++.

\n" + // "\n" + // "\n"; + // // while (true) + // { + // new_socket = accept(socketFd, (struct sockaddr *)&address, &addrlen); + // if (new_socket < 0) + // { + // // std::cerr << "Accept failed" << std::endl; + // close(socketFd); + // return EXIT_FAILURE; + // } + + // // std::cout << "Waiting for data..." << std::endl; + // // Read the request + // ssize_t valread = read(new_socket, buffer, sizeof(buffer) - 1); + // if (valread < 0) + // { + // // std::cerr << "Read failed" << std::endl; + // } + // else + // { + // buffer[valread] = '\0'; + // std::cout << "Received request:\n" + // << buffer << std::endl; + // Request r(buffer); + // } + + // // Close the sockets + + // // std::cout << http_response; + // send(new_socket, http_response, strlen(http_response), 0); + // close(new_socket); + // } + + // close(socketFd); + // return EXIT_SUCCESS; +} From 85330ba9dce806f37663dcddb8375b755b0e0090 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Sun, 11 May 2025 19:49:22 +0100 Subject: [PATCH 21/66] timeout::DONE --- Makefile | 2 +- configs/config.conf | 5 +- headers/ClientData.hpp | 5 +- headers/Server.hpp | 8 ++ headers/Webserv.hpp | 10 +-- headers/WebservHandler.hpp | 8 +- srcs/models/Server.cpp | 97 +++--------------------- srcs/models/Webserv.cpp | 47 +++++++----- srcs/models/WebservHandler.cpp | 49 ++++-------- srcs/parsing/config/readConfig.cpp | 3 +- srcs/parsing/helpers/FtPars.cpp | 14 ---- srcs/utils/serverUtils.cpp | 100 +++++++++++++++++++++++++ upload_main.cpp | 116 ----------------------------- 13 files changed, 174 insertions(+), 290 deletions(-) create mode 100644 srcs/utils/serverUtils.cpp delete mode 100644 upload_main.cpp diff --git a/Makefile b/Makefile index add63ce..b7de45c 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ NAME=webserv # OTM SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ -srcs/utils/httpResponseErrors.cpp +srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp # ACHAKKAF SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp diff --git a/configs/config.conf b/configs/config.conf index 3b48496..cd407cc 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -12,7 +12,7 @@ server_name = "myserver.local" client_max_body_size = "40000000000" # Timeouts IN SECONDS # optional -client_timeout = "600" +client_timeout = "10" # optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # optional @@ -27,6 +27,7 @@ location_root = "/var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "off" +upload_enabled = "on" upload_store = "var/www/uploads" cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" @@ -91,4 +92,4 @@ indexes = "default.html" allowed_methods = "GET,POST,DELETE" autoindex = "on" location1_upload_enabled = "on" -location1_upload_store = "/var/www/public/uploads" +location1_upload_store = "/var/www/public/uploads" \ No newline at end of file diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 59c6915..bb20927 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/08 16:56:56 by ochouati ### ########.fr */ +/* Updated: 2025/05/11 16:57:16 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -26,6 +26,7 @@ enum requestType { enum requestProgress { NOT_STARTED = -1, WORKING, + COLLECTED, READY, }; @@ -33,7 +34,7 @@ struct ClientData { int fd; requestType type; bool isRequestComplete; - size_t bytesSent; + size_t bytesSent; //! Why ? long contentLen; size_t readed; //! why ? bool isHeaderComplete; diff --git a/headers/Server.hpp b/headers/Server.hpp index 4f55a7f..ae76b33 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -59,6 +59,12 @@ class Server { void ftListen(void); void setSocketOptions(void); + // utils functions + std::string& validateAndTrim(std::string& str); + void fillServerData(std::string& line, Server& srv); + void setServer(std::vector& arr, size_t& idx, Server& srv); + + public: Server(const Server& srv, uint32_t port); Server(void); @@ -69,6 +75,7 @@ class Server { uint32_t getPort(void) const; size_t getTimeout(void) const; const std::string& getClientBodyTempPath(void) const; + const std::string& getUploadsPath(void) const; std::string getHost(void) const; std::string getserverName(void) const; std::string getRootPath(void) const; @@ -91,6 +98,7 @@ class Server { void setserverName(std::string& val); void setLimitClientBodySize(uint32_t val); void setClientBodyTempPath(std::string& val); + void setUploadsPath(std::string& val); void setErrorPage404(std::string& val); void setErrorPage500(std::string& val); void setIndex(std::string& key, bool val); diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index 4ba03c2..4026c4c 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 16:49:53 by ochouati #+# #+# */ -/* Updated: 2025/05/05 18:17:31 by ochouati ### ########.fr */ +/* Updated: 2025/05/11 17:51:52 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -26,27 +26,21 @@ class Webserv : public WebservHandler { private: readConfig *_config; - // std::vector _servers; - // std::vector _pollfds; - // std::vector _fds; int _nbrEvents; std::vector _envs; - // std::map _requests; bool _isRequestComplete(ClientData& client); void _init(); - // void setNonBlocking(int fd); - public: Webserv(); Webserv(readConfig& config, char **env); ~Webserv(); - // void _closeClient(int fd); Server* getServerByFd(int fd); void run(); bool isServerSocket(int fd) const; void acceptNewConnection(int srvfd); void handleClientRequest(int pollIdx, int fd); void sendResponse(int fd); + void timeoutHandler(void); }; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 2bebc20..360a88e 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/09 19:06:33 by ochouati ### ########.fr */ +/* Updated: 2025/05/11 18:38:44 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -24,7 +24,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 4096 +# define READ_SIZE 1024 # define URL_MAX_SIZE 20 # define CHUNCK_SIZE 4096 @@ -39,7 +39,7 @@ class WebservHandler std::map _requests; void setRequestType(ClientData& client); void setContentLength(ClientData& client); - bool isChunkedComplete(ClientData& client); + // bool isChunkedComplete(ClientData& client); bool isHeaderComplete(ClientData& client); bool isRequestComplete(ClientData& client); bool isRequestValid(ClientData& client); @@ -52,10 +52,8 @@ class WebservHandler public: WebservHandler(); - static int requestCount; void enablePOLLOUT(int fd); ~WebservHandler(); - }; extern WebservHandler *wServ; diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 762fd48..7e664eb 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -57,89 +57,6 @@ Server::Server(const Server& srv, uint32_t port) //! this->serverSocket = -1; } -static std::string& validateAndTrim(std::string& str) { - try - { - str = str.substr(str.find_first_of('=') + 1, str.length()); - str = FtPars::strTrim(str, " "); - FtPars::isValidPattern(str); - str = FtPars::strTrim(str, "\""); - } - catch(const std::exception& e) - { - throw std::runtime_error(e.what()); - } - return (str); -} - -static void fillServerData(std::string& line, Server& srv) { - std::string str; - str = line; - if (!line.compare(0, 11, "server_name")) { - if (!srv.getserverName().empty()) - throw std::runtime_error("server_name already set"); - validateAndTrim(str); - srv.setserverName(str); - } else if (!line.compare(0, 4, "host")) { - if (!srv.getHost().empty()) - throw std::runtime_error("host already set"); - validateAndTrim(str); - FtPars::isValidIP4(str); - srv.setHost(str); - } else if (!line.compare(0, 4, "port")) { - validateAndTrim(str); - FtPars::serverPortsHandler(srv, str); - } else if (!line.compare(0, 20, "client_max_body_size")) { - validateAndTrim(str); - srv.setLimitClientBodySize(std::atoi(str.c_str())); - } else if (!line.compare(0, 14, "error_page_404")) { - validateAndTrim(str); - srv.setErrorPage404(str); - } else if (!line.compare(0, 14, "error_page_500")) { - validateAndTrim(str); - srv.setErrorPage500(str); - }else if (!line.compare(0, 15, "allowed_methods")) { - validateAndTrim(str); - srv.setMethods(FtPars::parseMethods(srv.getAllowedMethods(), str)); - } else if (!line.compare(0, 7, "indexes")) { - validateAndTrim(str); - FtPars::setServerIndexes(srv, str); - } else if (!line.compare(0, 9, "autoindex")) { - validateAndTrim(str); - FtPars::autoIndexHandler(srv, str); - } else if (!line.compare(0, 14, "upload_enabled")) { - validateAndTrim(str); - FtPars::enableUploadsHandler(srv, str); - } else if (!line.compare(0, 13, "location_root")) { - validateAndTrim(str); - srv.setRootPath(str); - } else if (!line.compare(0, 9, "redirects")) { - std::cout << "-----> redirects: " << str << std::endl; - validateAndTrim(str); - FtPars::handleRedirects(srv, str); - } else if (!line.compare(0, 21, "client_body_temp_path")) { - validateAndTrim(str); - srv.setClientBodyTempPath(str); - } else if (!line.compare(0, 3, "cgi")) { - validateAndTrim(str); - FtPars::handleCGIs(srv, str); - } else if (!line.compare(0, 14, "client_timeout")) { - validateAndTrim(str); - srv.setTimeout(std::atoi(str.c_str())); - } -} - -static void setServer(std::vector& arr, size_t& idx, Server& srv) -{ - idx++; - for (size_t i = idx; i < arr.size(); ++i) { - if (FtPars::isNewServer(arr[i])) { - break; - } - fillServerData(arr[i], srv); - } - idx--; -} Server::Server(std::vector& arr, size_t& idx) { @@ -156,7 +73,6 @@ Server::Server(std::vector& arr, size_t& idx) } // GETTERS - uint32_t Server::getPort(void) const { return (this->port); @@ -226,6 +142,11 @@ const std::string& Server::getClientBodyTempPath(void) const return (this->clientBodyTempPath); } +const std::string& Server::getUploadsPath(void) const +{ + return (this->uploadsPath); +} + int Server::getSocket() const { return (this->serverSocket); @@ -250,7 +171,6 @@ const std::map& Server::getCGIs() const } // SETTERS - void Server::setPort(uint32_t val) { this->port = val; @@ -271,6 +191,11 @@ void Server::setClientBodyTempPath(std::string& val) this->clientBodyTempPath = val; } +void Server::setUploadsPath(std::string& val) +{ + this->uploadsPath = val; +} + void Server::setserverName(std::string& val) { this->serverName = val; @@ -365,7 +290,7 @@ void Server::ftBind(void) std::memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(this->port); - std::cout << "Host: " << this->host << " len: " << this->host.size() << std::endl; + std::cout << "Host: " << COL_GREEN << this->host << END_COL " Port: " << COL_YELLOW << this->port << END_COL << std::endl; addr.sin_addr.s_addr = inet_addr(this->host.c_str()); if ((this->serverBind = bind(this->serverSocket, (struct sockaddr *)&addr, sizeof(addr))) < 0) throw std::runtime_error("Bind failed"); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 4918423..75143bb 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/09 20:26:54 by ochouati ### ########.fr */ +/* Updated: 2025/05/11 18:46:01 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,7 +15,6 @@ #include #include - Webserv::Webserv() { } @@ -37,7 +36,7 @@ Webserv::Webserv(readConfig& config, char **env) { } void Webserv::_init() { - std::cout << "initing............" << std::endl; + std::cout << COL_BLUE << "initing.." << END_COL << std::endl; if (this->_servers.empty()) throw std::runtime_error("No servers found"); for (size_t i = 0; i < this->_servers.size(); ++i) { @@ -49,12 +48,8 @@ void Webserv::_init() { void Webserv::run() { this->_init(); while (RUNNING) { - if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), 0)) < 0) { - std::cerr << COL_RED << "Error while polling: " << END_COL << std::endl; - continue; - } + if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), 0)) < 0) continue; for (size_t i = 0; i < _pollfds.size() && this->_nbrEvents > 0; ++i) { - std::cout << COL_BLUE << "Pollfd: " << _pollfds[i].fd << " Events: " << _pollfds[i].revents << END_COL << std::endl; if (_pollfds[i].revents & (POLLERR | POLLHUP)) { if (!isServerSocket(_pollfds[i].fd)) this->_closeClient(_pollfds[i].fd); @@ -65,13 +60,10 @@ void Webserv::run() { --this->_nbrEvents; if (isServerSocket(_pollfds[i].fd)) this->acceptNewConnection(_pollfds[i].fd); - else { + else this->handleClientRequest(i, _pollfds[i].fd); - } - printTime(); std::cout << COL_BLUE << " Events nbr: " << this->_nbrEvents << ":" << _pollfds[i].fd << END_COL << std::endl; } if (_pollfds[i].revents & POLLOUT) { - //! Writting to client should be here //? 1. Check if client still exists in _requests //? 2. check if the request progress is complete //? 3. send response @@ -80,6 +72,7 @@ void Webserv::run() { this->sendResponse(_pollfds[i].fd); } } + this->timeoutHandler(); } } @@ -161,7 +154,6 @@ void Webserv::handleClientRequest(int pollIdx, int fd) } buffer[bytesRead] = '\0'; std::cout << "Received request: \n" << "buffer" << std::endl; //! remove this - // this->_requests[fd].request += buffer; this->_requests[fd].request.append(buffer, bytesRead); std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this std::map::iterator it = this->_requests.find(fd); @@ -169,12 +161,13 @@ void Webserv::handleClientRequest(int pollIdx, int fd) std::cerr << "Error: client not found" << std::endl; return; } - if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) //! - { - std::cout << "Client timeout" << std::endl; - this->_closeClient(fd); - return; - } + // //! change this + // if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) //! + // { + // std::cout << "Client timeout" << std::endl; + // this->_closeClient(fd); + // return; + // } if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; @@ -190,7 +183,6 @@ void Webserv::sendResponse(int fd) //?! Complete the request, you have to send h { mapIt it = this->_requests.find(fd); if (it == this->_requests.end()) { - std::cerr << "Error: client not found" << std::endl; return; } if (it->second.progress == READY) { @@ -199,3 +191,18 @@ void Webserv::sendResponse(int fd) //?! Complete the request, you have to send h std::cout << " ************>>>>>>>>>>>>>>>>>> Sending response to client..." << std::endl; } +void Webserv::timeoutHandler(void) +{ + for (mapIt it = _requests.begin(); it != _requests.end();) { + if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) { + std::cout << "Client fd " << it->first << " timed out" << std::endl; + mapIt nextIt = it; + this->_closeClient(it->first); + it = nextIt; + } else { + ++it; + } + } +} + + diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 64ec7bd..d9b2703 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/09 20:04:41 by ochouati ### ########.fr */ +/* Updated: 2025/05/11 18:13:40 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,8 +18,6 @@ #include #include -int WebservHandler::requestCount = 0; - WebservHandler::WebservHandler() { wServ = this; } @@ -45,10 +43,7 @@ void WebservHandler::_closeClient(int fd) void WebservHandler::setRequestType(ClientData& client) { printWarning("setRequestType...."); - if (client.headers.empty()) - return; - //! check if the request type is already set - if (client.type != NOT_SET) + if (client.headers.empty() || client.type != NOT_SET) return; else if (client.headers.find("Content-Type: multipart/form-data") != std::string::npos) client.type = MULTIPART_FORM; @@ -85,16 +80,10 @@ bool WebservHandler::isHeaderComplete(ClientData& client) pos = client.request.find("\r\n\r\n"); if (pos != std::string::npos) { client.isHeaderComplete = true; - client.headers = client.request.substr(0, pos + 4); //! should stop at pos or pos + 4 + client.headers = client.request.substr(0, pos + 4); client.request = client.request.substr(pos + 4); - std::cout << "Header complete: \n" << COL_MAGENTA << client.headers << END_COL << std::endl; //! remove this - std::cout << COL_GREEN << "Header size: " << client.headers.size() << END_COL << std::endl; - // this->setBoundary(client); client.bodyReded = client.request.size(); - std::cout << "*-> Body readed: " << client.bodyReded << std::endl; - std::cout << COL_GREEN << "Request: \n" << client.request << END_COL << std::endl; - std::cout << COL_GREEN << "Request size: " << client.request.size() << "\n\n" << END_COL << std::endl; - + client.progress = WORKING; return (true); } return (false); @@ -102,22 +91,21 @@ bool WebservHandler::isHeaderComplete(ClientData& client) bool WebservHandler::isRequestComplete(ClientData& client) { - printWarning("isRequestComplete...."); + printWarning("is Request Complete...."); this->isRequestValid(client); if (!client.isHeaderComplete) return (false); - processMultipartUpload(client); + processMultipartUpload(client); //? .... if (client.type == NO_CONTENT && client.contentLen == -1) - return (true); + return ((client.progress = COLLECTED), true); else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { - // std::cout << COL_RED << "client.contentLen: " << client.contentLen << " client.bodyReded: " << client.bodyReded << END_COL << std::endl; + client.isRequestComplete = true; std::cout << COL_RED << "Multipart form data complete" << END_COL << std::endl; - return (true); + return ((client.progress = COLLECTED), true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) - return (true); - // std::cout << "Request not complete" << std::endl; + return ((client.progress = COLLECTED), true); return (false); } @@ -127,8 +115,6 @@ bool WebservHandler::isRequestValid(ClientData& client) if (!client.isHeadersChecked) this->validateRequestHeaders(client); size_t max = client.server->getLimitClientBodySize(); - // std::cout << COL_GREEN << "------------------ >> (isRequestValid....) << ----------------" << END_COL << std::endl; - // std::cout << COL_MAGENTA << "Body readed: " << client.bodyReded << " & Max: " << max << std::endl; (void)max; //! if bad request chunked and content length //! if bad request content length and no content @@ -168,18 +154,15 @@ void WebservHandler::handleRequest(ClientData& client) return ; } std::string exampleHtml = "

Welcome to 1337 | testing Webserv

"; - // std::string exampleHtml = "{\"message\": \"File uploaded successfully!\"}"; std::string response = "HTTP/1.1 200 OK\r\n" "Content-Type: text/html\r\n" "Content-Length: " + FtPars::toString(exampleHtml.size()) + "\r\n" - "Access-Control-Allow-Origin: *\r\n" // Allow requests from any origin - "Access-Control-Allow-Methods: POST, GET, OPTIONS\r\n" // Allow specific methods - "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" // Allow specific headers + "Access-Control-Allow-Origin: *\r\n" + "Access-Control-Allow-Methods: POST, GET, OPTIONS\r\n" + "Access-Control-Allow-Headers: Content-Type, Authorization\r\n" "\r\n" + exampleHtml; printWarning("handleRequest...."); - // std::cout << COL_MAGENTA << "Request: \n" << END_COL << client.request << std::endl; send(client.fd, response.c_str(), response.size(), 0); //! MSG_NOSIGNAL (this flag not exist in MACOS) - this->requestCount++; //! increment request count (Delete this) this->_closeClient(client.fd); //! Close client connection only if the response is sent } @@ -189,23 +172,21 @@ void WebservHandler::validateRequestHeaders(ClientData& client) return; printWarning("validate Request Headers...."); this->validateUrl(client); + if (client.type == CHUNKED) + return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); client.isHeadersChecked = true; } - - void WebservHandler::validateUrl(ClientData& client) { // 414 Request-URI Too Long (more than URL_MAX_SIZE characters) size_t start = client.headers.find_first_of("/", 0); size_t end = client.headers.find(" HTTP/1.1", start); - // std::cout << "start: " << start << " end: " << end << std::endl; if (start == std::string::npos || end == std::string::npos) return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); std::string url = client.headers.substr(start, end - start); if (end - start > URL_MAX_SIZE) return HttpErrors::httpResponse414(client), this->enablePOLLOUT(client.fd); - // std::cout << "URL: " << url << " Lenght: " << end - start << std::endl; // 400 Bad Request url contains invalid characters if (url.find_first_not_of(ALLOWED_CHARS) != std::string::npos) return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); diff --git a/srcs/parsing/config/readConfig.cpp b/srcs/parsing/config/readConfig.cpp index 0e66dce..7985dd5 100644 --- a/srcs/parsing/config/readConfig.cpp +++ b/srcs/parsing/config/readConfig.cpp @@ -14,7 +14,6 @@ readConfig::readConfig(void) { - std::cout << "Default conf Constructor...\n"; this->lines = new std::vector(); if (!this->lines) throw std::runtime_error("No ressources"); @@ -91,7 +90,7 @@ void readConfig::readFile(char *argFile) ++x; } this->seperateServers(); - std::cout << this->servers.size() << " ################################################### \n"; + std::cout << " --------- ------------ ------------- ------------ \n"; // for (size_t i = 0; i < this->servers.size(); ++i) { //! // std::cout << "Id: " << i << std::endl; // printServer(this->servers[i]); diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index ea03001..477488a 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -185,7 +185,6 @@ namespace FtPars { { if (!FtPars::isNumbersOnly(tmp)) throw std::runtime_error("Error parsing server ports"); - std::cout << "A new Port added: " << tmp << std::endl; arr.push_back(tmp); } for (size_t i = 0; i < arr.size(); i++) { @@ -207,8 +206,6 @@ namespace FtPars { } void enableUploadsHandler(Server& server, std::string& line) { - - std::cout << "enableUploadsHandler: " << line << std::endl; if (line == "on") server.setEnableUploads(true); else if (line == "off") @@ -243,15 +240,9 @@ namespace FtPars { } else throw std::runtime_error("Error parsing server redirects"); } - std::cout << COL_YELLOW << "Redirects: ----------------------> " << std::endl; - for (std::map::const_iterator it = server.getRedirects().begin(); it != server.getRedirects().end(); ++it) { - std::cout << COL_YELLOW << "Key: " << it->first << " Value: " << it->second << END_COL << std::endl; - } - std::cout << COL_YELLOW << "----------------------------------" << END_COL << std::endl; } void handleCGIs(Server& server, std::string& line) { - // /usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs std::string tmp; std::stringstream ss(line); std::vector arr; @@ -270,11 +261,6 @@ namespace FtPars { } else throw std::runtime_error("Error parsing server cgis"); } - std::cout << COL_YELLOW << "CGIs: ----------------------> " << std::endl; - for (std::map::const_iterator it = server.getCGIs().begin(); it != server.getCGIs().end(); ++it) { - std::cout << COL_YELLOW << "Key: " << it->first << " Value: " << it->second << END_COL << std::endl; - } - std::cout << COL_YELLOW << "----------------------------------" << END_COL << std::endl; } size_t getCurrentTimeMs() { diff --git a/srcs/utils/serverUtils.cpp b/srcs/utils/serverUtils.cpp new file mode 100644 index 0000000..e2dc518 --- /dev/null +++ b/srcs/utils/serverUtils.cpp @@ -0,0 +1,100 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* serverUtils.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/11 19:30:28 by ochouati #+# #+# */ +/* Updated: 2025/05/11 19:35:54 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "./../../headers/Server.hpp" + + +std::string& Server::validateAndTrim(std::string& str) { + try + { + str = str.substr(str.find_first_of('=') + 1, str.length()); + str = FtPars::strTrim(str, " "); + FtPars::isValidPattern(str); + str = FtPars::strTrim(str, "\""); + } + catch(const std::exception& e) + { + throw std::runtime_error(e.what()); + } + return (str); +} + +void Server::fillServerData(std::string& line, Server& srv) { + std::string str; + str = line; + if (!line.compare(0, 11, "server_name")) { + if (!srv.getserverName().empty()) + throw std::runtime_error("server_name already set"); + this->validateAndTrim(str); + srv.setserverName(str); + } else if (!line.compare(0, 4, "host")) { + if (!srv.getHost().empty()) + throw std::runtime_error("host already set"); + this->validateAndTrim(str); + FtPars::isValidIP4(str); + srv.setHost(str); + } else if (!line.compare(0, 4, "port")) { + this->validateAndTrim(str); + FtPars::serverPortsHandler(srv, str); + } else if (!line.compare(0, 20, "client_max_body_size")) { + this->validateAndTrim(str); + srv.setLimitClientBodySize(std::atoi(str.c_str())); + } else if (!line.compare(0, 14, "error_page_404")) { + this->validateAndTrim(str); + srv.setErrorPage404(str); + } else if (!line.compare(0, 14, "error_page_500")) { + this->validateAndTrim(str); + srv.setErrorPage500(str); + }else if (!line.compare(0, 15, "allowed_methods")) { + this->validateAndTrim(str); + srv.setMethods(FtPars::parseMethods(srv.getAllowedMethods(), str)); + } else if (!line.compare(0, 7, "indexes")) { + this->validateAndTrim(str); + FtPars::setServerIndexes(srv, str); + } else if (!line.compare(0, 9, "autoindex")) { + this->validateAndTrim(str); + FtPars::autoIndexHandler(srv, str); + } else if (!line.compare(0, 12, "upload_store")) { + + } else if (!line.compare(0, 14, "upload_enabled")) { + this->validateAndTrim(str); + FtPars::enableUploadsHandler(srv, str); + } else if (!line.compare(0, 13, "location_root")) { + this->validateAndTrim(str); + srv.setRootPath(str); + } else if (!line.compare(0, 9, "redirects")) { + this->validateAndTrim(str); + FtPars::handleRedirects(srv, str); + } else if (!line.compare(0, 21, "client_body_temp_path")) { + this->validateAndTrim(str); + srv.setClientBodyTempPath(str); + } else if (!line.compare(0, 3, "cgi")) { + this->validateAndTrim(str); + FtPars::handleCGIs(srv, str); + } else if (!line.compare(0, 14, "client_timeout")) { + this->validateAndTrim(str); + srv.setTimeout(std::atoi(str.c_str())); + } +} + + +void Server::setServer(std::vector& arr, size_t& idx, Server& srv) +{ + idx++; + for (size_t i = idx; i < arr.size(); ++i) { + if (FtPars::isNewServer(arr[i])) { + break; + } + this->fillServerData(arr[i], srv); + } + idx--; +} diff --git a/upload_main.cpp b/upload_main.cpp deleted file mode 100644 index ece3c12..0000000 --- a/upload_main.cpp +++ /dev/null @@ -1,116 +0,0 @@ -#include -#include -#include -#include -#include -#include "request.hpp" - -#define PORT 8080 - -void executeCgiScript(Request&, char**); - -void leaks(void) { - system("leaks -q a.out"); -} -int main(int ac, char** av, char **env) -{ - // atexit(leaks); - std::string req = - "POST tst.py?name=achakkaf&filetype=.c HTTP/1.1\r\n" - "Host: localhost\r\n" - "Connection: close\r\n" - "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary12345\r\n" - "Content-Length: 173\r\n" - "\r\n" - "------WebKitFormBoundary12345\r\n" - "Content-Disposition: form-data; name=\"field1\"\r\n" - "\r\n" - "Hello, World!\r\n" - "------WebKitFormBoundary12345\r\n" - "Content-Disposition: form-data; name=\"field2\"; filename=\"example.txt\"\r\n" - "Content-Type: text/plain\r\n" - "\r\n" - "File content here...\r\n" - "------WebKitFormBoundary12345--\r\n"; - Request r(req); - - // std::cout << "Method: " << r.getMethod() << std::endl; - // std::cout << "path: " << r.getPath() << std::endl; - // for (size_t i = 0; i < r.getQuerySize(); ++i) - // std::cout << r.getQuery(i) << std::endl; - // std::cout << "query: " << r.getQuery() << std::endl; - // std::cout << "version: " << r.getVersion() << std::endl; - // r.printHeaders(); - // std::cout << "body |" << r.getBody() << "|" << std::endl - std::cout << "ENV:\n"; - // for (size_t i = 0; i < r.getEnvSize() ; ++i) std::cout << r.getEnv(i) << std::endl; - executeCgiScript(r, env); - - // int socketFd = socket(AF_INET, SOCK_STREAM, 0); - // std::cerr << "socket number: " << socketFd << std::endl; - - // struct sockaddr_in address; - // address.sin_family = AF_INET; - // address.sin_addr.s_addr = INADDR_ANY; - // address.sin_port = htons(PORT); - - // bind(socketFd, (struct sockaddr *)&address, sizeof(address)); - // listen(socketFd, 5); - // // std::cout << "Server is listening on port " << PORT << std::endl; - - // socklen_t addrlen = sizeof(address); - // int new_socket; - // char buffer[204800]; - // // Accept a connection - // const char *http_response = - // "HTTP/1.1 200 OK\r\n" - // "Content-Type: text/html\r\n" - // "Content-Length: 311\r\n" - // "Connection: close\r\n\r\n" - // "\n" - // "\n" - // "\n" - // " \n" - // " \n" - // " Simple Webpage\n" - // "\n" - // "\n" - // "

Welcome to My Simple Webpage

\n" - // "

This is a basic webpage served from C++.

\n" - // "\n" - // "\n"; - // // while (true) - // { - // new_socket = accept(socketFd, (struct sockaddr *)&address, &addrlen); - // if (new_socket < 0) - // { - // // std::cerr << "Accept failed" << std::endl; - // close(socketFd); - // return EXIT_FAILURE; - // } - - // // std::cout << "Waiting for data..." << std::endl; - // // Read the request - // ssize_t valread = read(new_socket, buffer, sizeof(buffer) - 1); - // if (valread < 0) - // { - // // std::cerr << "Read failed" << std::endl; - // } - // else - // { - // buffer[valread] = '\0'; - // std::cout << "Received request:\n" - // << buffer << std::endl; - // Request r(buffer); - // } - - // // Close the sockets - - // // std::cout << http_response; - // send(new_socket, http_response, strlen(http_response), 0); - // close(new_socket); - // } - - // close(socketFd); - // return EXIT_SUCCESS; -} From 28ec1ecdb68b8230e70a52abee912c36c7a563b6 Mon Sep 17 00:00:00 2001 From: Moad Boujamaa Date: Mon, 12 May 2025 10:36:37 +0100 Subject: [PATCH 22/66] Delete is working --- configs/config.conf | 10 ++---- headers/ResponseUtils.hpp | 4 ++- req.rest | 4 +-- srcs/models/Response.cpp | 59 +++++++++++++++++++++++++++------- srcs/models/ResponseUtils.cpp | 37 ++++++++++++++++++++- srcs/models/Webserv.cpp | 6 ++-- srcs/models/WebservHandler.cpp | 2 +- var/www/html/fie.txt | 1 + 8 files changed, 95 insertions(+), 28 deletions(-) create mode 100644 var/www/html/fie.txt diff --git a/configs/config.conf b/configs/config.conf index 4ff999d..caf4e09 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -14,19 +14,13 @@ client_body_temp_path= "/var/tmp/nginx/client_body" error_page_404 = "/errors/404.html" error_page_500 = "/errors/500.html" -# Route 1 (for path "/") +# Route (for path "/") location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" -upload_store = "/var/www/uploads" - +upload_store = "var/www/uploads" -# Route 3 (for path "/scripts") -location3_path = "./scripts/php/" -location3_root = "var/www/cgi-bin" -location3_cgi_enable = ".php,.py" -location3_cgi_path_info = "on" cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index 73186dc..291f790 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/04/26 09:15:53 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 09:04:24 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -48,4 +48,6 @@ class ResponseUtils { static std::string getErrorPage(RESPONSE_CODE status); static std::string getMimeType(std::string filepath); static std::string generateAutoIndex(std::string filepath); + static bool deleteFile(const std::string& path); + static bool deleteFolder(const std::string& path); }; \ No newline at end of file diff --git a/req.rest b/req.rest index 20c6e1e..18b8ecc 100644 --- a/req.rest +++ b/req.rest @@ -1,9 +1,7 @@ -#GET, POST, DELETE -GET http://127.0.0.1:8080/test HTTP/1.1 +DELETE http://127.0.0.1:8080/folder/ HTTP/1.1 Connection: "keep-alive" ### -#GET GET http://localhost:8080/test.py HTTP/1.1 Content-Type: "text/html" diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index a8d3219..e2c2b7f 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,22 +6,22 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/08 11:35:05 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 10:28:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" +#include Response::Response(void) {} Response::~Response(void) {} -Response::Response(const Response& obj){ +Response::Response(const Response& obj) { *this = obj; } -Response& Response::operator=(const Response& obj) -{ +Response& Response::operator=(const Response& obj) { (void) obj; return (*this); } @@ -45,6 +45,7 @@ std::string Response::combineResponse(void) { Response::Response(struct ClientData &client, Request &req) { cgi = new Cgi(); std::string full_path = client.server->getRootPath() + req.getPath(); + std::cout << COL_GREEN << "Full path: " << full_path << END_COL << std::endl; http_version = req.getVersion(); headers["Server"] = "NorthServ/1.0"; @@ -61,9 +62,12 @@ Response::Response(struct ClientData &client, Request &req) { { status_code = MOVED_PERMANENTLY; headers["location"] = client.server->getRedirects()[req.getPath()]; + return ; } - else if (!ResponseUtils::pathExists(full_path)) + else if (!ResponseUtils::pathExists(full_path)) { status_code = NOT_FOUND; + std::cout << COL_RED << "File really doesn't exist" << END_COL << std::endl; + } else if (req.getMethod() == "GET") handleGet(client, req, full_path); else if (req.getMethod() == "POST") @@ -71,6 +75,7 @@ Response::Response(struct ClientData &client, Request &req) { else if (req.getMethod() == "DELETE") handleDelete(client, req, full_path); + std::cout << status_code << std::endl; switch (status_code) { // 30x case MOVED_PERMANENTLY: @@ -93,6 +98,10 @@ Response::Response(struct ClientData &client, Request &req) { body = ResponseUtils::getErrorPage(METHOD_NOT_ALLOWED); headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; + case NOCONTENT: + break; + case INTERNAL_SERVER_ERROR: + break; default: status_code = OK; status_text = "OK"; @@ -106,12 +115,12 @@ Response::Response(struct ClientData &client, Request &req) { void Response::handleGet(struct ClientData &client, Request &req, const std::string &path) { + std::cout << COL_YELLOW << "Getting here" << END_COL << std::endl; bool isFile = true; std::string index; - if (path.find("..") != std::string::npos) { + if (path.find("..") != std::string::npos) status_code = FORBIDDEN; return; - } if (ResponseUtils::isDirectory(path)) { if (path.at(path.length() - 1) != '/') { status_code = MOVED_PERMANENTLY; @@ -142,7 +151,7 @@ void Response::handleGet(struct ClientData &client, Request &req, const std::str } } -void Response::handlePost(struct ClientData &client, Request &req, const std::string &path) { +void Response::handlePost(struct ClientData &client, Request &req, const std::string &path) { (void) client; (void) req; (void) path; @@ -150,8 +159,36 @@ void Response::handlePost(struct ClientData &client, Request &req, const std::st } void Response::handleDelete(struct ClientData &client, Request &req, const std::string &path) { + std::cout << COL_RED << "Start deleting" << END_COL << std::endl; (void) client; - (void) req; - (void) path; - std::cout << "delete" << std::endl; + if (path.find("..") != std::string::npos) + status_code = FORBIDDEN; return; + + std::cout << COL_RED << "Check 1 passed" << END_COL << std::endl; + if (ResponseUtils::isDirectory(path)) { + std::cout << COL_BLUE << "deleting folder" << END_COL << std::endl; + if ((path.at(path.length() - 1)) != '/') { + status_code = MOVED_PERMANENTLY; + headers["location"] = req.getPath() + "/"; + return ; + } + if (ResponseUtils::deleteFolder(path)) + status_code = NOCONTENT; + else { + if (access(path.c_str(), W_OK)) + status_code = FORBIDDEN; + else + status_code = INTERNAL_SERVER_ERROR; + } + } else { + std::cout << COL_BLUE << "deleting file" << END_COL << std::endl; + if (ResponseUtils::deleteFile(path)) + status_code = NOCONTENT; + else { + if (access(path.c_str(), W_OK)) + status_code = FORBIDDEN; + else + status_code = INTERNAL_SERVER_ERROR; + } + } } diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index 4384429..a820b95 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/07 20:03:13 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 09:05:13 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -139,3 +139,38 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { body << ""; return body.str(); } + +bool ResponseUtils::deleteFile(const std::string& path) +{ + if (remove(path.c_str()) != 0) { + std::cerr << "Error deleting file: " << path << std::endl; + return false; + } + return true; +} + +bool ResponseUtils::deleteFolder(const std::string& path) +{ + DIR* dir = opendir(path.c_str()); + + if (!dir) { + std::cerr << "Error opening directory: " << path << std::endl; + return false; + } + struct dirent* entry; + while ((entry = readdir(dir)) != NULL) + { + if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") + continue; + std::string filePath = path + "/" + entry->d_name; + if (entry->d_type == DT_DIR) + deleteFolder(filePath); + else + deleteFile(filePath); + } + closedir(dir); + if (remove(path.c_str()) != 0) + std::cerr << "Error deleting directory: " << path << std::endl; + return true; +} + diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 804ad43..1cf70e4 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Webserv.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/07 18:48:19 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 10:34:34 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -174,7 +174,7 @@ void Webserv::handleClientRequest(int pollIdx, int fd) } if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; - std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; + // std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; } if (this->_isRequestComplete(it->second)) { printWarning("Request Ready......................>>>>"); diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index a3b0766..f1713e3 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/07 20:27:09 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 10:33:18 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/var/www/html/fie.txt b/var/www/html/fie.txt new file mode 100644 index 0000000..9e78414 --- /dev/null +++ b/var/www/html/fie.txt @@ -0,0 +1 @@ +DELETE MEEEEEW \ No newline at end of file From 2f25f6694357dcc09d89617b9559df4e807f3f1d Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 12 May 2025 18:00:02 +0100 Subject: [PATCH 23/66] request method added --- headers/ClientData.hpp | 5 +- headers/WebservHandler.hpp | 6 +- labs/test_stat.cpp | 16 + srcs/models/WebservHandler.cpp | 17 +- websites/main/index.html | 239 +++++++++++ websites/main/script.js | 207 ++++++++++ websites/main/style.css | 719 +++++++++++++++++++++++++++++++++ 7 files changed, 1203 insertions(+), 6 deletions(-) create mode 100644 labs/test_stat.cpp create mode 100644 websites/main/index.html create mode 100644 websites/main/script.js create mode 100644 websites/main/style.css diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index bb20927..627ae9c 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/11 16:57:16 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 12:26:24 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -39,7 +39,8 @@ struct ClientData { size_t readed; //! why ? bool isHeaderComplete; bool isHeadersChecked; - int file; //! + int file; //! + std::string method; std::string request; Server *server; std::string headers; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 360a88e..a55dc3f 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/11 18:38:44 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 14:18:05 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,7 +25,7 @@ # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 1024 -# define URL_MAX_SIZE 20 +# define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 void processMultipartUpload(ClientData &client); @@ -39,13 +39,13 @@ class WebservHandler std::map _requests; void setRequestType(ClientData& client); void setContentLength(ClientData& client); - // bool isChunkedComplete(ClientData& client); bool isHeaderComplete(ClientData& client); bool isRequestComplete(ClientData& client); bool isRequestValid(ClientData& client); void handleRequest(ClientData& client); void _closeClient(int fd); void setBoundary(ClientData& client); + void setMethod(ClientData& client); //* Validate the request void validateRequestHeaders(ClientData& client); void validateUrl(ClientData& client); diff --git a/labs/test_stat.cpp b/labs/test_stat.cpp new file mode 100644 index 0000000..f77039b --- /dev/null +++ b/labs/test_stat.cpp @@ -0,0 +1,16 @@ +#include +#include + +#define FILE_PATH "/Users/ochouati/goinfre/tsts.txt" //? add file or directory path here!! + +int main() { + struct stat fileStat; + + if (stat(FILE_PATH, &fileStat) == -1) { + std::cerr << "Some error or we should close the conn, or return server error" << std::endl; + return 1; + } + std::cout << "file size: " << fileStat.st_size << " bytes" << std::endl; + std::cout << "is directory: " << (S_ISDIR(fileStat.st_mode) ? "Yes" : "No") << std::endl; + std::cout << "is regular file: " << (S_ISREG(fileStat.st_mode) ? "Yes" : "No") << std::endl; +} diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index d9b2703..1d827c4 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/11 18:13:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 14:17:15 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -45,6 +45,8 @@ void WebservHandler::setRequestType(ClientData& client) printWarning("setRequestType...."); if (client.headers.empty() || client.type != NOT_SET) return; + else if (client.method != "POST") + client.type = NO_CONTENT; else if (client.headers.find("Content-Type: multipart/form-data") != std::string::npos) client.type = MULTIPART_FORM; else if (client.headers.find("Content-Length:") != std::string::npos) @@ -84,6 +86,9 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.request = client.request.substr(pos + 4); client.bodyReded = client.request.size(); client.progress = WORKING; + this->setMethod(client); + std::cout << COL_GREEN << client.headers << END_COL << "\n\n" << std::endl; + std::cout << COL_MAGENTA << client.request << END_COL << "\n\n" << client.request.size() << std::endl; return (true); } return (false); @@ -146,6 +151,16 @@ void WebservHandler::setBoundary(ClientData& client) std::cout << "*>> Boundary: " << client.boundary << std::endl; } +void WebservHandler::setMethod(ClientData& client) +{ + if (!client.isHeaderComplete || !client.method.empty()) + return; + size_t pos = client.headers.find(" "); + if (pos == std::string::npos) + return; + client.method = client.headers.substr(0, pos); +} + void WebservHandler::handleRequest(ClientData& client) { if (!client.error.empty()) { diff --git a/websites/main/index.html b/websites/main/index.html new file mode 100644 index 0000000..3f361ef --- /dev/null +++ b/websites/main/index.html @@ -0,0 +1,239 @@ + + + + + + Webserv | 1337 Coding School Project + + + + + +
+ +
+ + +
+ +
+
+

Webserv 1337

+

A lightweight HTTP server built from scratch

+
+ + +
+
+ +
+

About the Project

+
+
+

The Webserv project is a core component of the 42 coding school curriculum, challenging students to develop a fully functional HTTP server from scratch using C++. This project pushes students to gain a deep understanding of web protocols, network programming, and server architecture.

+ +
+
+
+

Objectives

+
    +
  • Implement a compliant HTTP/1.1 server
  • +
  • Handle multiple client connections efficiently
  • +
  • Process GET, POST, and DELETE requests
  • +
  • Implement proper error handling and status codes
  • +
+
+ +
+
+

Challenges

+
    +
  • Non-blocking I/O and connection management
  • +
  • Parsing HTTP requests accurately
  • +
  • Handling concurrent clients efficiently
  • +
  • Implementing proper resource cleanup
  • +
+
+ +
+
+

Technologies

+
    +
  • C++ programming language
  • +
  • POSIX API and socket programming
  • +
  • Non-blocking I/O with poll()
  • +
  • HTTP/1.1 protocol implementation
  • +
+
+
+
+
+
+ +
+

Project Team

+
+
+
+ Otmane Chouati +
+

Otmane Chouati

+

Backend Developer

+

Core server architecture and request handling

+ +
+ +
+
+ Abdelaziz Chakkaf +
+

Abdelaziz Chakkaf

+

Network Specialist

+

HTTP protocol implementation and socket programming

+ +
+ +
+
+ Moad Boujamaa +
+

Moad Boujamaa

+

System Engineer

+

Configuration and resource management

+ +
+
+
+ +
+

Key Features

+
+
+
+

Fast Performance

+

Optimized for speed with non-blocking I/O and efficient resource management.

+
+ +
+
+

Security

+

Built with security in mind to prevent common web vulnerabilities.

+
+ +
+
+

Configurable

+

Easily configure virtual hosts, routes, and server behaviors.

+
+ +
+
+

Scalable

+

Designed to handle multiple connections simultaneously with efficient resource usage.

+
+
+
+ +
+

File Management

+ +
+
+ + +
+ +
+
+

Upload Files to Server

+

Select a file from your device to upload it to the server.

+
+
+ + +

+
+ +
+
+
+ +
+

Delete Files or Folders

+

Enter the path of the file or folder you want to delete.

+
+
+ + +
+ +
+
+

Examples:

+ /home/user/documents/file.txt + C:\\Users\\username\\Documents\\folder +
+
+
+
+
+
+
+ +
+ + +
+ + + + + \ No newline at end of file diff --git a/websites/main/script.js b/websites/main/script.js new file mode 100644 index 0000000..677e9db --- /dev/null +++ b/websites/main/script.js @@ -0,0 +1,207 @@ + +document.addEventListener('DOMContentLoaded', function() { + if (typeof particlesJS !== 'undefined') { + particlesJS('particles-js', { + "particles": { + "number": { + "value": 80, + "density": { + "enable": true, + "value_area": 800 + } + }, + "color": { + "value": "#6c5ce7" + }, + "shape": { + "type": "circle", + "stroke": { + "width": 0, + "color": "#000000" + } + }, + "opacity": { + "value": 0.5, + "random": true + }, + "size": { + "value": 3, + "random": true + }, + "line_linked": { + "enable": true, + "distance": 150, + "color": "#6c5ce7", + "opacity": 0.4, + "width": 1 + }, + "move": { + "enable": true, + "speed": 2, + "direction": "none", + "random": true, + "straight": false, + "out_mode": "out", + "bounce": false + } + }, + "interactivity": { + "detect_on": "canvas", + "events": { + "onhover": { + "enable": true, + "mode": "grab" + }, + "onclick": { + "enable": true, + "mode": "push" + }, + "resize": true + }, + "modes": { + "grab": { + "distance": 140, + "line_linked": { + "opacity": 1 + } + }, + "push": { + "particles_nb": 4 + } + } + }, + "retina_detect": true + }); + } + + + const revealElements = document.querySelectorAll('.reveal'); + + const revealOnScroll = () => { + revealElements.forEach(element => { + const elementTop = element.getBoundingClientRect().top; + const elementVisible = 150; + + if (elementTop < window.innerHeight - elementVisible) { + element.classList.add('active'); + } + }); + }; + + window.addEventListener('scroll', revealOnScroll); + revealOnScroll(); + + + const tabButtons = document.querySelectorAll('.tab-button'); + const tabPanes = document.querySelectorAll('.tab-pane'); + + tabButtons.forEach(button => { + button.addEventListener('click', () => { + + tabButtons.forEach(btn => btn.classList.remove('active')); + + + button.classList.add('active'); + + const tabId = button.getAttribute('data-tab'); + tabPanes.forEach(pane => { + pane.classList.remove('active'); + if (pane.id === tabId) { + pane.classList.add('active'); + } + }); + }); + }); + + const fileInput = document.getElementById('fileInput'); + const fileName = document.getElementById('fileName'); + + if (fileInput && fileName) { + fileInput.addEventListener('change', () => { + if (fileInput.files.length > 0) { + fileName.textContent = fileInput.files[0].name; + } else { + fileName.textContent = ''; + } + }); + } +}); + + +const uploadButton = document.getElementById('uploadButton'); +if (uploadButton) { + uploadButton.addEventListener('click', () => { + const fileInput = document.getElementById('fileInput'); + const uploadStatus = document.getElementById('uploadStatus'); + const fileName = document.getElementById('fileName'); + const file = fileInput?.files[0]; + + if (file) { + uploadButton.disabled = true; + uploadButton.innerHTML = ' Uploading...'; + + const formData = new FormData(); + formData.append('file', file); + + setTimeout(() => { + uploadButton.disabled = false; + uploadButton.innerHTML = ' Upload'; + + if (uploadStatus) { + uploadStatus.textContent = 'File uploaded successfully!'; + uploadStatus.className = 'status-message success'; + uploadStatus.style.display = 'block'; + + setTimeout(() => { + uploadStatus.style.display = 'none'; + }, 5000); + } + + if (fileInput) fileInput.value = ''; + if (fileName) fileName.textContent = ''; + + }, 2000); + } else if (uploadStatus) { + uploadStatus.textContent = 'Please select a file to upload.'; + uploadStatus.className = 'status-message error'; + uploadStatus.style.display = 'block'; + } + }); +} + + +const deleteButton = document.getElementById('deleteButton'); +if (deleteButton) { + deleteButton.addEventListener('click', () => { + const deletePath = document.getElementById('deletePath'); + const deleteStatus = document.getElementById('deleteStatus'); + const path = deletePath?.value; + + if (path) { + deleteButton.disabled = true; + deleteButton.innerHTML = ' Deleting...'; + + setTimeout(() => { + deleteButton.disabled = false; + deleteButton.innerHTML = ' Delete'; + + if (deleteStatus) { + deleteStatus.textContent = 'File/Folder deleted successfully!'; + deleteStatus.className = 'status-message success'; + deleteStatus.style.display = 'block'; + + setTimeout(() => { + deleteStatus.style.display = 'none'; + }, 5000); + } + + if (deletePath) deletePath.value = ''; + + }, 1500); + } else if (deleteStatus) { + deleteStatus.textContent = 'Please enter a file or folder path.'; + deleteStatus.className = 'status-message error'; + deleteStatus.style.display = 'block'; + } + }); +} \ No newline at end of file diff --git a/websites/main/style.css b/websites/main/style.css new file mode 100644 index 0000000..3924a90 --- /dev/null +++ b/websites/main/style.css @@ -0,0 +1,719 @@ +/* Modern CSS Reset and Base Styles */ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +:root { + --primary: #6c5ce7; + --primary-light: #a29bfe; + --secondary: #00cec9; + --dark: #0b0b19; + --dark-light: #1e1e2f; + --light: #f5f6fa; + --danger: #e74c3c; + --success: #00b894; + --text: #dfe6e9; + --text-dark: #2d3436; + --shadow: 0 4px 6px rgba(0, 0, 0, 0.1); + --shadow-strong: 0 10px 20px rgba(0, 0, 0, 0.2); + --transition: all 0.3s ease; +} + +@keyframes fadeIn { + from { opacity: 0; transform: translateY(20px); } + to { opacity: 1; transform: translateY(0); } +} + +@keyframes pulse { + 0% { transform: scale(1); } + 50% { transform: scale(1.05); } + 100% { transform: scale(1); } +} + +@keyframes float { + 0% { transform: translateY(0px); } + 50% { transform: translateY(-10px); } + 100% { transform: translateY(0px); } +} + +html { + scroll-behavior: smooth; +} + +body { + font-family: 'Poppins', sans-serif; + background-color: var(--dark); + color: var(--text); + line-height: 1.6; + overflow-x: hidden; + position: relative; +} + +.particles-container { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; +} + +a { + color: var(--primary-light); + text-decoration: none; + transition: var(--transition); +} + +a:hover { + color: var(--secondary); +} + +ul { + list-style: none; +} + +button { + cursor: pointer; + font-family: 'Poppins', sans-serif; +} + +.container { + width: 100%; + max-width: 1200px; + margin: 0 auto; + padding: 5rem 2rem; +} + +.reveal { + opacity: 0; + transform: translateY(30px); + transition: all 1s ease; +} + +.reveal.active { + opacity: 1; + transform: translateY(0); +} + +/* Header Styles */ +header { + background-color: rgba(14, 14, 27, 0.95); + backdrop-filter: blur(5px); + padding: 1rem 2rem; + display: flex; + justify-content: space-between; + align-items: center; + position: sticky; + top: 0; + z-index: 1000; + box-shadow: var(--shadow); +} + +.logo { + font-size: 1.5rem; + font-weight: 700; + color: var(--light); + display: flex; + align-items: center; +} + +.code-tag { + color: var(--primary); + margin-right: 0.5rem; +} + +nav ul { + display: flex; + gap: 1.5rem; +} + +nav ul li a { + color: var(--text); + font-weight: 500; + padding: 0.5rem 0.75rem; + border-radius: 4px; + transition: var(--transition); +} + +nav ul li a:hover, nav ul li a.active { + color: var(--primary); + background-color: rgba(108, 92, 231, 0.1); +} + +nav ul li a i { + margin-right: 0.5rem; +} + +/* Hero Section */ +.hero { + height: 80vh; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-align: center; + padding: 2rem; + position: relative; + overflow: hidden; +} + +.hero:before { + content: ''; + position: absolute; + top: -50%; + left: -50%; + width: 200%; + height: 200%; + background: radial-gradient(circle, rgba(108, 92, 231, 0.1) 0%, rgba(0, 206, 201, 0.05) 50%, rgba(11, 11, 25, 0) 100%); + animation: rotate 30s linear infinite; + z-index: -1; +} + +@keyframes rotate { + from { transform: rotate(0deg); } + to { transform: rotate(360deg); } +} + +.hero h1 { + font-size: 4rem; + letter-spacing: 2px; + margin-bottom: 1rem; + text-shadow: 0 4px 8px rgba(0,0,0,0.3); + animation: pulse 3s infinite; +} + +.highlight { + color: var(--primary); +} + +.tagline { + font-size: 1.5rem; + opacity: 0.8; + margin-bottom: 2rem; +} + +.cta-buttons { + display: flex; + gap: 1rem; +} + +.cta-button { + padding: 0.8rem 2rem; + font-size: 1rem; + font-weight: 600; + border-radius: 50px; + border: none; + transition: var(--transition); + box-shadow: var(--shadow); +} + +.cta-button.primary { + background: linear-gradient(135deg, var(--primary), var(--primary-light)); + color: var(--light); +} + +.cta-button.secondary { + background: transparent; + border: 2px solid var(--primary); + color: var(--primary); +} + +.cta-button:hover { + transform: translateY(-3px); + box-shadow: var(--shadow-strong); +} + +/* About Section */ +.content-wrapper { + display: flex; + align-items: flex-start; + gap: 2rem; +} + +.text-content { + flex: 1; +} + +.info-cards { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 2rem; + margin-top: 2rem; +} + +.info-card { + background-color: var(--dark-light); + padding: 1.5rem; + border-radius: 10px; + box-shadow: var(--shadow); + transition: var(--transition); + height: 100%; +} + +.info-card:hover { + transform: translateY(-5px); + box-shadow: var(--shadow-strong); +} + +.info-card .icon { + color: var(--primary); + font-size: 2rem; + margin-bottom: 1rem; +} + +.info-card h3 { + margin-bottom: 1rem; + color: var(--light); +} + +.info-card ul { + padding-left: 1rem; +} + +.info-card ul li { + position: relative; + padding-left: 1rem; + margin-bottom: 0.5rem; +} + +.info-card ul li:before { + content: "•"; + color: var(--secondary); + position: absolute; + left: 0; +} + +/* Team Section */ +.team-container { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); + gap: 2rem; + margin-top: 3rem; +} + +.team-member { + background-color: var(--dark-light); + border-radius: 10px; + overflow: hidden; + box-shadow: var(--shadow); + transition: var(--transition); + text-align: center; + padding-bottom: 1.5rem; +} + +.team-member:hover { + transform: translateY(-5px); + box-shadow: var(--shadow-strong); +} + +.profile-img { + width: 100%; + height: 200px; + overflow: hidden; + position: relative; +} + +.profile-img:before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, 0.7) 100%); + z-index: 1; +} + +.profile-img img { + width: 100%; + height: 100%; + object-fit: cover; + transition: var(--transition); +} + +.team-member:hover .profile-img img { + transform: scale(1.1); +} + +.team-member h3 { + margin: 1rem 0 0.2rem; +} + +.team-member .role { + color: var(--primary); + font-size: 0.9rem; + margin-bottom: 0.5rem; +} + +.team-member .contribution { + padding: 0 1.5rem; + font-size: 0.9rem; + opacity: 0.8; + margin-bottom: 1rem; +} + +.social-links { + display: flex; + justify-content: center; + gap: 0.5rem; +} + +.social-link { + width: 36px; + height: 36px; + border-radius: 50%; + background-color: rgba(108, 92, 231, 0.1); + color: var(--primary); + display: flex; + justify-content: center; + align-items: center; + transition: var(--transition); +} + +.social-link:hover { + background-color: var(--primary); + color: var(--light); + transform: translateY(-3px); +} + +/* Features Section */ +.features-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 2rem; + margin-top: 3rem; +} + +.feature { + background-color: var(--dark-light); + border-radius: 10px; + padding: 2rem; + text-align: center; + box-shadow: var(--shadow); + transition: var(--transition); +} + +.feature:hover { + transform: translateY(-5px); + box-shadow: var(--shadow-strong); +} + +.feature-icon { + width: 70px; + height: 70px; + border-radius: 50%; + background-color: rgba(108, 92, 231, 0.1); + color: var(--primary); + font-size: 1.5rem; + display: flex; + justify-content: center; + align-items: center; + margin: 0 auto 1.5rem; + transition: var(--transition); +} + +.feature:hover .feature-icon { + background-color: var(--primary); + color: var(--light); + transform: rotate(10deg); +} + +.feature h3 { + margin-bottom: 1rem; +} + +/* File Management Section */ +.tabs { + background-color: var(--dark-light); + border-radius: 10px; + overflow: hidden; + box-shadow: var(--shadow); +} + +.tab-buttons { + display: flex; + background-color: rgba(0, 0, 0, 0.3); +} + +.tab-button { + padding: 1rem 2rem; + flex: 1; + background: transparent; + border: none; + color: var(--text); + font-size: 1rem; + font-weight: 600; + transition: var(--transition); + cursor: pointer; +} + +.tab-button.active { + background-color: var(--primary); + color: var(--light); +} + +.tab-content { + padding: 2rem; +} + +.tab-pane { + display: none; +} + +.tab-pane.active { + display: block; + animation: fadeIn 0.5s ease-in-out; +} + +.tab-pane h3 { + margin-bottom: 0.5rem; +} + +.tab-pane p { + margin-bottom: 1.5rem; + opacity: 0.8; +} + +.upload-form, .delete-form { + display: flex; + flex-direction: column; + gap: 1.5rem; +} + +.file-upload-container { + position: relative; + display: flex; + flex-direction: column; + align-items: center; +} + +.file-input { + position: absolute; + width: 0.1px; + height: 0.1px; + opacity: 0; + overflow: hidden; + z-index: -1; +} + +.file-label { + display: flex; + flex-direction: column; + align-items: center; + padding: 2rem; + background-color: rgba(108, 92, 231, 0.1); + color: var(--primary); + border: 2px dashed var(--primary); + border-radius: 8px; + cursor: pointer; + transition: var(--transition); + width: 100%; +} + +.file-label:hover { + background-color: rgba(108, 92, 231, 0.2); +} + +.file-label i { + font-size: 3rem; + margin-bottom: 1rem; +} + +.file-name { + margin-top: 1rem; + font-size: 0.9rem; +} + +.input-group { + position: relative; + margin-bottom: 1rem; +} + +.input-icon { + position: absolute; + left: 1rem; + top: 50%; + transform: translateY(-50%); + color: var(--primary); +} + +#deletePath { + width: 100%; + padding: 1rem 1rem 1rem 3rem; + background-color: rgba(0, 0, 0, 0.2); + border: 1px solid rgba(255, 255, 255, 0.1); + border-radius: 8px; + color: var(--text); + font-size: 1rem; + transition: var(--transition); +} + +#deletePath:focus { + outline: none; + border-color: var(--primary); + box-shadow: 0 0 0 2px rgba(108, 92, 231, 0.3); +} + +.path-examples { + margin-top: 1rem; + font-size: 0.9rem; + opacity: 0.7; +} + +.path-examples p { + margin-bottom: 0.5rem; +} + +.path-examples code { + display: block; + padding: 0.5rem; + background-color: rgba(0, 0, 0, 0.3); + border-radius: 4px; + margin-bottom: 0.5rem; + font-family: monospace; +} + +.action-button { + padding: 0.8rem 1.5rem; + border: none; + border-radius: 8px; + background-color: var(--primary); + color: var(--light); + font-weight: 600; + display: flex; + justify-content: center; + align-items: center; + gap: 0.5rem; + transition: var(--transition); +} + +.action-button:hover { + filter: brightness(1.1); + transform: translateY(-2px); + box-shadow: var(--shadow); +} + +.action-button.dangerous { + background-color: var(--danger); +} + +.action-button i { + font-size: 1.1rem; +} + +.status-message { + margin-top: 1rem; + padding: 0.75rem; + border-radius: 4px; + font-size: 0.9rem; + text-align: center; + display: none; +} + +.status-message.success { + background-color: rgba(0, 184, 148, 0.2); + color: var(--success); + border: 1px solid var(--success); + display: block; +} + +.status-message.error { + background-color: rgba(231, 76, 60, 0.2); + color: var(--danger); + border: 1px solid var(--danger); + display: block; +} + +/* Footer */ +footer { + background-color: var(--dark-light); + padding-top: 3rem; +} + +.footer-content { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 2rem; + max-width: 1200px; + margin: 0 auto; + padding: 0 2rem; +} + +.footer-section h3 { + color: var(--light); + margin-bottom: 1rem; + position: relative; + padding-bottom: 0.5rem; +} + +.footer-section h3:after { + content: ''; + position: absolute; + bottom: 0; + left: 0; + width: 50px; + height: 2px; + background-color: var(--primary); +} + +.footer-section ul li { + margin-bottom: 0.5rem; +} + +.footer-section ul li a { + color: var(--text); + opacity: 0.8; + transition: var(--transition); +} + +.footer-section ul li a:hover { + color: var(--primary); + opacity: 1; + padding-left: 5px; +} + +.footer-bottom { + text-align: center; + padding: 1.5rem 0; + margin-top: 3rem; + border-top: 1px solid rgba(255, 255, 255, 0.1); +} + +/* Responsive Styles */ +@media (max-width: 768px) { + header { + flex-direction: column; + padding: 1rem; + } + + .logo { + margin-bottom: 1rem; + } + + nav ul { + flex-wrap: wrap; + justify-content: center; + } + + .hero h1 { + font-size: 3rem; + } + + .team-container, .features-grid, .info-cards { + grid-template-columns: 1fr; + } + + .cta-buttons { + flex-direction: column; + } + + .tab-buttons { + flex-direction: column; + } + + .tab-button { + text-align: center; + } +} \ No newline at end of file From 3175864d5944f725a5a3de0059527de8c4d2c3e3 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 12 May 2025 18:52:19 +0100 Subject: [PATCH 24/66] timeout infinite loop fixed --- configs/config.conf | 2 +- srcs/models/Webserv.cpp | 23 ++++++++++++----------- srcs/models/WebservHandler.cpp | 4 +--- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/configs/config.conf b/configs/config.conf index cd407cc..6a79e6c 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -12,7 +12,7 @@ server_name = "myserver.local" client_max_body_size = "40000000000" # Timeouts IN SECONDS # optional -client_timeout = "10" +client_timeout = "2" # optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # optional diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 75143bb..5fe6e7f 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/11 18:46:01 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 18:45:35 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -193,16 +193,17 @@ void Webserv::sendResponse(int fd) //?! Complete the request, you have to send h void Webserv::timeoutHandler(void) { - for (mapIt it = _requests.begin(); it != _requests.end();) { - if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) { - std::cout << "Client fd " << it->first << " timed out" << std::endl; - mapIt nextIt = it; - this->_closeClient(it->first); - it = nextIt; - } else { - ++it; - } - } + mapIt it = _requests.begin(); + while (it != _requests.end()) { + if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) { + std::cout << "Client fd " << it->first << " timed out" << std::endl; + int clientFd = it->first; + ++it; + this->_closeClient(clientFd); + } else { + ++it; + } + } } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 1d827c4..e47dc85 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/12 14:17:15 by ochouati ### ########.fr */ +/* Updated: 2025/05/12 18:04:08 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -87,8 +87,6 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.bodyReded = client.request.size(); client.progress = WORKING; this->setMethod(client); - std::cout << COL_GREEN << client.headers << END_COL << "\n\n" << std::endl; - std::cout << COL_MAGENTA << client.request << END_COL << "\n\n" << client.request.size() << std::endl; return (true); } return (false); From 737e12a4a3a5e298899056c09a8d9bad03215333 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Tue, 13 May 2025 18:11:05 +0100 Subject: [PATCH 25/66] Error Fixed --- configs/config.conf | 4 +- headers/Webserv.hpp | 4 +- headers/WebservHandler.hpp | 4 +- srcs/models/WebservHandler.cpp | 3 +- upload_FtPars.cpp | 270 +++++++++++++++++++++++++++++++++ var/www/app/index.html | 13 ++ websites/landing/index.html | 75 --------- websites/landing/script.js | 7 - websites/landing/style.css | 78 ---------- 9 files changed, 290 insertions(+), 168 deletions(-) create mode 100644 upload_FtPars.cpp create mode 100644 var/www/app/index.html delete mode 100644 websites/landing/index.html delete mode 100644 websites/landing/script.js delete mode 100644 websites/landing/style.css diff --git a/configs/config.conf b/configs/config.conf index 07e3625..8e3595b 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -12,7 +12,7 @@ server_name = "myserver.local" client_max_body_size = "40000000000" # Timeouts IN SECONDS # optional -client_timeout = "2" +client_timeout = "600" # optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # optional @@ -23,7 +23,7 @@ error_page_404 = "errors/404.html" # optional error_page_500 = "errors/500.html" -location_root = "var/www/html" +location_root = "websites/main" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index 4026c4c..bdf3a85 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 16:49:53 by ochouati #+# #+# */ -/* Updated: 2025/05/11 17:51:52 by ochouati ### ########.fr */ +/* Updated: 2025/05/13 13:59:44 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,8 +15,6 @@ #include "ClientData.hpp" # include "WebservHandler.hpp" # include "readConfig.hpp" -#include -#include #include # include # include diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index b62a6fe..296978c 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/12 18:57:43 by ochouati ### ########.fr */ +/* Updated: 2025/05/13 14:22:46 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -24,7 +24,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 1024 +# define READ_SIZE 4096 # define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index f4aadb8..d21f964 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/12 18:58:59 by ochouati ### ########.fr */ +/* Updated: 2025/05/13 18:10:22 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -173,6 +173,7 @@ void WebservHandler::handleRequest(ClientData& client) std::string res = response->combineResponse(); std::cout << "=======>\n" << res << "\n<=======" << std::endl; send(client.fd, res.c_str(), res.size(), 0); + this->_closeClient(client.fd); // first should be the send everything } void WebservHandler::validateRequestHeaders(ClientData& client) diff --git a/upload_FtPars.cpp b/upload_FtPars.cpp new file mode 100644 index 0000000..477488a --- /dev/null +++ b/upload_FtPars.cpp @@ -0,0 +1,270 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* FtPars.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/02/13 15:08:31 by ochouati #+# #+# */ +/* Updated: 2025/02/24 09:48:26 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "./../../../headers/FtPars.hpp" +#include +#include +#include + +/// @brief collection of helper functions for parsing +namespace FtPars { + + static bool isMethodDouplicated(std::vector& vec) { + if (vec.size() > 1) { + for (size_t i = 0; i < vec.size(); i++) { + for (size_t j = i + 1; j < vec.size(); j++) { + if (vec[i] == vec[j]) + return (true); + } + } + } + return (false); + } + + size_t charsCount(std::string& str, char c) { + size_t i = 0; + for (std::string::iterator it = str.begin(); it != str.end(); ++it) { + if (*it == c) + i++; + } + return (i); + } + + bool containSpaces(std::string& str) { + for (size_t i = 0; i < str.size(); i++) { + if (std::isspace(str[i])) + return (true); + } + return (false); + } + + bool strnCompare(std::string& str1, std::string str2, size_t n) { + std::string tmp = str1.substr(0, n); + if (tmp == str2) + return (true); + return (false); + } + + bool isNewServer(std::string& line) + { + if (!line.compare(0, 8, "[server.") && line[0] == '[' && line[line.size() - 1] + && FtPars::charsCount(line, ']') == 1 + && FtPars::charsCount(line, '[') == 1) + return (true); + return (false); + } + + std::string& strTrim(std::string&str, std::string set) + { + size_t f = str.find_first_not_of(set); + if (f != std::string::npos) + str = str.erase(0, f); + size_t l = str.find_last_not_of(set); + if (l != std::string::npos) + str = str.erase(l + 1, str.length()); + return (str); + } + + bool isValidPattern(std::string& str) + { + if (str.empty() || str[0] != '"' || str[str.size() - 1] != '"' || str.size() < 3) + throw std::runtime_error("invalid configs"); + return (true); + } + + bool isValidIP4(std::string& str) + { + if (charsCount(str, '.') != 3) + throw std::runtime_error("invalid configs"); + for (size_t i = 0; i < str.size(); i++) + { + if (str[i] != '.' && !std::isdigit(str[i])) + throw std::runtime_error("invalid configs"); + } + return (true); + } + + /// @brief Convert an IPv4 address from its text representation to binary form + /// @param const std::string& str + /// @return uint32_t (ip) + uint32_t ftInetPton(const std::string& str) + { + std::vector arr; + std::stringstream ss(str); + uint32_t ip = 0; + uint8_t byte; + + while (ss.good()) + { + std::string substr; + getline(ss, substr, '.'); + arr.push_back(substr); + } + if (arr.size() != 4) + return (0); + for (size_t i = 0; i < arr.size(); i++) { + byte = std::atoi(arr[i].c_str()); + ip |= byte << (24 - (i * 8)); + } + return (ip); + } + + std::map parseMethods(const std::map& oldMp, std::string& str) { + std::stringstream ss(str); + std::string tmp; + std::vector arr; + std::map mp = oldMp; + + if (ss.fail()) + throw std::runtime_error("Error parsing methods"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + if (arr.empty() || arr.size() > 3) + throw std::runtime_error("Error parsing methods"); + if (isMethodDouplicated(arr)) + throw std::runtime_error("Error parsing methods douplicated"); + for (size_t i = 0; i < arr.size(); i++) { + if (arr[i] == "GET") + mp["GET"] = true; + else if (arr[i] == "POST") + mp["POST"] = true; + else if (arr[i] == "DELETE") + mp["DELETE"] = true; + else + throw std::runtime_error("Error parsing methods"); + } + if (!std::count(arr.begin(), arr.end(), std::string("GET"))) + mp["GET"] = false; + return (mp); + } + + void setServerIndexes(Server& server, std::string& line) { + std::string tmp; + std::stringstream ss(line); + std::vector arr; + + if (ss.fail()) + throw std::runtime_error("Error parsing server indexes"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + for (size_t i = 0; i < arr.size(); i++) { + if (FtPars::containSpaces(arr[i])) + throw std::runtime_error("Error parsing server indexes"); + else + server.setIndex(arr[i], true); + } + } + + void autoIndexHandler(Server& server, std::string& line) { + if (line == "on") + server.setAutoIndex(true); + else if (line == "off") + server.setAutoIndex(false); + else + throw std::runtime_error("Error parsing autoindex"); + } + + void serverPortsHandler(Server& srv, std::string& line) { + + std::string tmp; + std::stringstream ss(line); + std::vector arr; + + if (ss.fail()) + throw std::runtime_error("Error parsing server ports"); + while (getline(ss, tmp, ',')) + { + if (!FtPars::isNumbersOnly(tmp)) + throw std::runtime_error("Error parsing server ports"); + arr.push_back(tmp); + } + for (size_t i = 0; i < arr.size(); i++) { + if (FtPars::containSpaces(arr[i])) + throw std::runtime_error("Error parsing server ports"); + else + srv.setPorts(std::atoi(arr[i].c_str())); + } + if (srv.getPorts().size()) + srv.setPort(srv.getPorts()[0]); + } + + bool isNumbersOnly(const std::string& str) { + for (size_t i = 0; i < str.size(); i++) { + if (!std::isdigit(str[i])) + return (false); + } + return (true); + } + + void enableUploadsHandler(Server& server, std::string& line) { + if (line == "on") + server.setEnableUploads(true); + else if (line == "off") + server.setEnableUploads(false); + else + throw std::runtime_error("Error parsing enable uploads"); + } + + std::string toString(size_t nbr) { + std::stringstream ss; + + ss << nbr; + return (ss.str()); + } + + void handleRedirects(Server& server, std::string& line) { + std::string tmp; + std::stringstream ss(line); + std::vector arr; + if (ss.fail()) + throw std::runtime_error("Error parsing server redirects"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + for (size_t i = 0; i < arr.size(); i++) { + std::stringstream ss2(arr[i]); + std::string key; + std::string val; + if (getline(ss2, key, ':') && getline(ss2, val, ':')) { + if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) + throw std::runtime_error("Error parsing server redirects"); + server.setRedirects(key, val); + } else + throw std::runtime_error("Error parsing server redirects"); + } + } + + void handleCGIs(Server& server, std::string& line) { + std::string tmp; + std::stringstream ss(line); + std::vector arr; + if (ss.fail()) + throw std::runtime_error("Error parsing server cgis"); + while (getline(ss, tmp, ',')) + arr.push_back(tmp); + for (size_t i = 0; i < arr.size(); i++) { + std::stringstream ss2(arr[i]); + std::string key; + std::string val; + if (getline(ss2, key, ':') && getline(ss2, val, ':')) { + if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) + throw std::runtime_error("Error parsing server cgis"); + server.setCGI(key, val); + } else + throw std::runtime_error("Error parsing server cgis"); + } + } + + size_t getCurrentTimeMs() { + clock_t clock_time = clock(); + return static_cast(clock_time) * 1000 / CLOCKS_PER_SEC; + } +} diff --git a/var/www/app/index.html b/var/www/app/index.html new file mode 100644 index 0000000..3a3078a --- /dev/null +++ b/var/www/app/index.html @@ -0,0 +1,13 @@ + + + + + + Document + + +
+

this is a website

+
+ + \ No newline at end of file diff --git a/websites/landing/index.html b/websites/landing/index.html deleted file mode 100644 index b061d1c..0000000 --- a/websites/landing/index.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - - Northserv - - - -
- -
-
-
-
-

Welcome to Northserv

-

Your one-stop solution for all your service needs.

-
-

Your one-stop solution for all your service needs.

-
-
-
-

About Us

-

We are dedicated to providing top-notch services to our clients.

-
-
- otm -

Otmane Chouati

-

Otmane is a passionate developer with a knack for problem-solving.

-
-
- achakkaf -

Abdelaziz Chakkaf

-

Abdelaziz is a passionate developer with a knack for problem-solving.

-
-
- mboujama -

Moad Boujamaa

-

Moad is a passionate developer with a knack for problem-solving.

-
-
-
-
-
-
-

Our Projects

-

Explore our range of projects and services.

-
-
-
-
-

Contact Us

-

If you have any questions, feel free to reach out!

-
-
-
-
- all rights reserved © Northserv -
- - - - \ No newline at end of file diff --git a/websites/landing/script.js b/websites/landing/script.js deleted file mode 100644 index 6f9987c..0000000 --- a/websites/landing/script.js +++ /dev/null @@ -1,7 +0,0 @@ - -let dateYearTag = document.querySelector("#date-year"); -dateYearTag.innerHTML = new Date().getFullYear(); - - - - diff --git a/websites/landing/style.css b/websites/landing/style.css deleted file mode 100644 index 38caefc..0000000 --- a/websites/landing/style.css +++ /dev/null @@ -1,78 +0,0 @@ - -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -header { - background-color: #4CAF50; - color: white; - text-align: center; - padding: 20px 0; -} - -nav { - display: flex; - justify-content: space-between; - align-items: center; - padding: 0 20px; -} - -nav ul { - display: flex; - gap: 20px; -} - -nav ul li { - list-style: none; -} - -a { - text-decoration: none; - color: white; -} - -h1 { - color: red; -} - -main { - padding: 20px; -} - -.users-image { - display: flex; - width: 90%; - gap: 20px; - justify-content: center; - align-items: center; - margin: 0 auto; -} - -.users-image div { - flex: 1; - background-color: beige; - justify-content: center; - align-items: center; - text-align: center; - border: 1px solid #ccc; - border-radius: 10px; - box-shadow: 4px 4px 4px rgba(47, 47, 47, 0.1); - padding: 10px; - margin: 10px; -} - -.users-image img { - width: 30%; - border-radius: 1000px; - border: 2px solid #4CAF50; - object-fit: cover; -} - -footer { - background-color: #333; - color: white; - text-align: center; - padding: 20px 0; -} From bda9bf7063ef4e8e3ee0ff532092e53d35478652 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 14 May 2025 09:36:17 +0100 Subject: [PATCH 26/66] Merged with upload --- headers/ClientData.hpp | 3 +- srcs/models/Upload.cpp | 67 ++++++++++++++++++++++++++---------------- upload_Makefile | 41 ++++++++++++++++++++++++++ upload_main.cpp | 57 +++++++++++++++++++++++++++++++++++ 4 files changed, 142 insertions(+), 26 deletions(-) create mode 100644 upload_Makefile create mode 100644 upload_main.cpp diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 627ae9c..0b5133c 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/12 12:26:24 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 09:27:53 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -52,6 +52,7 @@ struct ClientData { std::string tmpFolder; std::string tmpFileName; int currentFileFd; + std::map uploadFd; //! add map ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index fb5e50c..4a2dae5 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -74,70 +74,87 @@ std::string getFileName(const std::string &buffer){ return fileName; } +void closeFiles(ClientData &client) +{ + std::map::iterator it; + + for (it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it) + close(it->second); + client.uploadFd.clear(); +} //! set client.currentFileFd to -1 //! call setheader() function (I am not sure about the function name) // You should put all tmp files in a temp folder +// you should close all the files + you should reset the files void processMultipartUpload(ClientData &client) { ssize_t written; + + while(!client.request.empty()) { - if (client.currentFileFd == -1){ + if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ size_t headers = client.request.find("\r\n\r\n"); std::string fileName; if (headers != std::string::npos) { fileName = getFileName(client.request); if (!fileName.empty()) { - client.tmpFileName = "upload_" + fileName; - client.currentFileFd = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); - if (client.currentFileFd == -1) - break; + client.tmpFileName = "upload_" + fileName; //! remove prefix & chan + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) + close(client.uploadFd[client.tmpFileName]); + client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); + if (client.uploadFd[client.tmpFileName] == -1){ + closeFiles(client); + break; //! close all the files + } } client.request.erase(0, headers + 4); } - else + else return; } std::cout << COL_RED << "uploading..." << END_COL << std::endl; - if (client.request.rfind("\r") != std::string::npos){ - size_t boundaryPos = client.request.find("--" + client.boundary); - // std::cout << COL_RED << client.request << " " << boundaryPos << END_COL<< std::endl; + + if (client.request.find("\r") != std::string::npos){ + size_t boundaryPos = client.request.find("--" + client.boundary + "\r\n"); + size_t endBoundary; if (boundaryPos != std::string::npos) { - if (client.currentFileFd != -1){ - written = write(client.currentFileFd, + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()){ + written = write(client.uploadFd[client.tmpFileName], client.request.c_str(), boundaryPos > 2 ? boundaryPos - 2: 0); if (written == -1){ - close(client.currentFileFd); - client.currentFileFd = -1; + closeFiles(client); return; } } - if(client.request.find("--" + client.boundary + "--") != std::string::npos){ - close(client.currentFileFd); - client.currentFileFd = -1; - } - client.request.erase(0, boundaryPos + client.boundary.size() + 2); + client.request.erase(0, boundaryPos + client.boundary.size() + 4); + client.tmpFileName.clear(); continue; } + else if((endBoundary = client.request.find("--" + client.boundary + "--\r\n")) != std::string::npos){ + written = write(client.uploadFd[client.tmpFileName], + client.request.c_str(), + endBoundary > 2 ? endBoundary - 2: 0); + client.request.clear(); + client.tmpFileName.clear(); + closeFiles(client); + //! REQUEST_COMPLETE + } else return; } - if (client.currentFileFd != -1) { - written = write(client.currentFileFd, + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) { + written = write(client.uploadFd[client.tmpFileName], client.request.c_str(), client.request.size()); - // std::cout << client.request << std::endl; if (written == -1){ - close(client.currentFileFd); - client.currentFileFd = -1; + closeFiles(client); return; } client.request.erase(0, written); } - else - client.request.clear(); } } diff --git a/upload_Makefile b/upload_Makefile new file mode 100644 index 0000000..c2c9e9e --- /dev/null +++ b/upload_Makefile @@ -0,0 +1,41 @@ +CPP = c++ +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address + +NAME=webserv + +# OTM +SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ +srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ +srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp + +# ACHAKKAF +SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp learning/request.cpp + +# MOAD +SRCS += srcs/models/Response.cpp srcs/models/ResponseUtils.cpp srcs/models/MimeTypes.cpp srcs/models/Cgi.cpp + +#OTM +SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp + +HEADERS=headers/*.hpp +OBJS=$(SRCS:.cpp=.o) + +all: $(NAME) + +$(NAME): $(OBJS) + $(CPP) $(CPPFLAGS) $(OBJS) -o $(NAME) + +%.o: %.cpp $(HEADERS) + $(CPP) $(CPPFLAGS) -c $< -o $@ + +clean: + rm -f $(OBJS) + +fclean: clean + rm -f $(NAME) +tests: + bash test/test01.sh + +re: fclean all + +.PHONY: all clean fclean re \ No newline at end of file diff --git a/upload_main.cpp b/upload_main.cpp new file mode 100644 index 0000000..899c34e --- /dev/null +++ b/upload_main.cpp @@ -0,0 +1,57 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* main.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/01/25 15:41:59 by ochouati #+# #+# */ +/* Updated: 2025/02/13 13:05:36 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "headers/Webserv.hpp" +#include "headers/header.hpp" +#include "headers/debug.hpp"//! +#include "headers/readConfig.hpp" +#include +#include +#include +#include +#include +#include +#include +#include + +char **serverEnv; +std::string *notFound; +WebservHandler *wServ; + +// void ll(){ //! DELETE ME +// system("leaks -q webserv"); +// } + +int server(char *argFile, char **env) { + try { + readConfig conf; + conf.readFile(argFile); + Webserv webserv(conf, env); + webserv.run(); + } catch (const std::exception &e) { + std::cerr << "\033[0;91m ** " << e.what() << " ** \033[0m" << std::endl; + return (1); + } + return (0); +} + +int main(int ac, char **av, char **env) +{ + // atexit(ll); //! -->delete + if (ac != 2) { + std::cout << "config file require!" << std::endl; + return (1); + } + serverEnv = env; + notFound = new std::string("not_found"); + return (server(av[1], env)); +} From 4f4da5bae5761b8dff79a8edc7874f9360116d2c Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Wed, 14 May 2025 10:17:57 +0100 Subject: [PATCH 27/66] add allow header --- headers/Response.hpp | 6 +++--- headers/ResponseUtils.hpp | 3 ++- srcs/models/Response.cpp | 19 ++++++++++--------- srcs/models/ResponseUtils.cpp | 15 ++++++++++++++- 4 files changed, 29 insertions(+), 14 deletions(-) diff --git a/headers/Response.hpp b/headers/Response.hpp index 5f6f128..426085a 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/12 12:10:05 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 14:34:17 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -36,8 +36,8 @@ class Response : public MimeTypes int getFd() const; void handleGet(struct ClientData &client, Request &req, std::string &path); - void handlePost(struct ClientData &client, Request &req, const std::string &path); - void handleDelete(struct ClientData &client, Request &req, const std::string &path); + void handlePost(struct ClientData &client, Request &req, std::string &path); + void handleDelete(struct ClientData &client, Request &req, std::string &path); int checkRequestedPath(struct ClientData &client, const std::string &req); int checkAllowedMethods(struct ClientData &client, const Request &req); diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index 291f790..a47ddf0 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:27:49 by mboujama #+# #+# */ -/* Updated: 2025/05/12 09:04:24 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 14:48:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -50,4 +50,5 @@ class ResponseUtils { static std::string generateAutoIndex(std::string filepath); static bool deleteFile(const std::string& path); static bool deleteFolder(const std::string& path); + static std::string getAllowHeader(const std::map allowed); }; \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 624273c..a6b8d4f 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/12 12:55:31 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 14:52:32 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -56,8 +56,11 @@ Response::Response(struct ClientData &client, Request &req) { if (full_path.find("..") != std::string::npos) status_code = FORBIDDEN; - else if (!client.server->getAllowedMethods()[req.getMethod()]) + else if (!client.server->getAllowedMethods()[req.getMethod()]) { + // Add allow headers; + headers["Allow"] = ResponseUtils::getAllowHeader(client.server->getAllowedMethods()); status_code = METHOD_NOT_ALLOWED; + } else if (!client.server->getRedirects()[req.getPath()].empty()) { status_code = MOVED_PERMANENTLY; @@ -114,7 +117,6 @@ Response::Response(struct ClientData &client, Request &req) { void Response::handleGet(struct ClientData &client, Request &req, std::string &path) { - std::cout << COL_YELLOW << "Getting here" << END_COL << std::endl; bool isFile = true; std::string index; @@ -122,7 +124,6 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p status_code = FORBIDDEN; return; } - std::cout << COL_YELLOW << "Getting here" << END_COL << std::endl; if (ResponseUtils::isDirectory(path)) { if (path.at(path.length() - 1) != '/') { status_code = MOVED_PERMANENTLY; @@ -155,17 +156,16 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p : fd = ResponseUtils::openFile(path); } } - std::cout << COL_RED << "End get request" << END_COL << std::endl; + client.progress = READY; } -void Response::handlePost(struct ClientData &client, Request &req, const std::string &path) { - (void) client; +void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { (void) req; (void) path; - std::cout << "post" << std::endl; + client.progress = READY; } -void Response::handleDelete(struct ClientData &client, Request &req, const std::string &path) { +void Response::handleDelete(struct ClientData &client, Request &req, std::string &path) { (void) client; if (path.find("..") != std::string::npos) { status_code = FORBIDDEN; @@ -196,4 +196,5 @@ void Response::handleDelete(struct ClientData &client, Request &req, const std:: status_code = INTERNAL_SERVER_ERROR; } } + client.progress = READY; } diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index a820b95..dde57e1 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/12 09:05:13 by mboujama ### ########.fr */ +/* Updated: 2025/05/12 14:52:03 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -174,3 +174,16 @@ bool ResponseUtils::deleteFolder(const std::string& path) return true; } +std::string ResponseUtils::getAllowHeader(std::map allowed) { + std::string ret; + bool first = true; + std::map::iterator it; + + for (it = allowed.begin(); it != allowed.end(); it++) { + if (!first) + ret.append(", "); + ret.append(it->first); + first = false; + } + return ret; +} From f714739adebc46be56965f586fac218d68d980ba Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Wed, 14 May 2025 11:04:18 +0100 Subject: [PATCH 28/66] add getters --- configs/config.conf | 2 +- headers/Response.hpp | 6 +++-- req.rest | 2 +- srcs/models/Response.cpp | 47 ++++++++++++++++++++++++++-------------- var/www/html/file.html | 16 ++++++++++++++ 5 files changed, 53 insertions(+), 20 deletions(-) create mode 100644 var/www/html/file.html diff --git a/configs/config.conf b/configs/config.conf index 8e3595b..3737b38 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -23,7 +23,7 @@ error_page_404 = "errors/404.html" # optional error_page_500 = "errors/500.html" -location_root = "websites/main" +location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" diff --git a/headers/Response.hpp b/headers/Response.hpp index 426085a..b7ddf1f 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/12 14:34:17 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 11:01:01 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -34,7 +34,6 @@ class Response : public MimeTypes std::string date; int fd; - int getFd() const; void handleGet(struct ClientData &client, Request &req, std::string &path); void handlePost(struct ClientData &client, Request &req, std::string &path); void handleDelete(struct ClientData &client, Request &req, std::string &path); @@ -45,4 +44,7 @@ class Response : public MimeTypes Response(struct ClientData &clientData , Request &request); ~Response(); std::string combineResponse(); + int getFd() const; + std::string getBody() const; + std::map getHeaders() const; }; diff --git a/req.rest b/req.rest index ab2e264..fd54b58 100644 --- a/req.rest +++ b/req.rest @@ -1,4 +1,4 @@ -GET http://127.0.0.1:8080/test.py HTTP/1.1 +GET http://127.0.0.1:8080/file.html HTTP/1.1 Connection: "keep-alive" ### diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index a6b8d4f..0d2d39c 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,12 +6,13 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/12 14:52:32 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 11:02:08 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Response.hpp" #include +#include Response::Response(void) {} @@ -30,6 +31,14 @@ int Response::getFd() const { return fd; } +std::string Response::getBody() const { + return body; +} + +std::map Response::getHeaders() const { + return headers; +} + std::string Response::combineResponse(void) { std::ostringstream res; @@ -49,7 +58,7 @@ Response::Response(struct ClientData &client, Request &req) { http_version = req.getVersion(); headers["Server"] = "NorthServ/1.0"; - // headers["Content-Type"] = "text/html"; + headers["Content-Type"] = "text/html"; headers["Connection"] = "keep-alive"; headers["Date"] = ResponseUtils::getDateTime(); fd = -1; @@ -57,9 +66,8 @@ Response::Response(struct ClientData &client, Request &req) { if (full_path.find("..") != std::string::npos) status_code = FORBIDDEN; else if (!client.server->getAllowedMethods()[req.getMethod()]) { - // Add allow headers; - headers["Allow"] = ResponseUtils::getAllowHeader(client.server->getAllowedMethods()); status_code = METHOD_NOT_ALLOWED; + headers["Allow"] = ResponseUtils::getAllowHeader(client.server->getAllowedMethods()); } else if (!client.server->getRedirects()[req.getPath()].empty()) { @@ -67,10 +75,8 @@ Response::Response(struct ClientData &client, Request &req) { headers["Location"] = client.server->getRedirects()[req.getPath()]; return ; } - else if (!ResponseUtils::pathExists(full_path)) { + else if (!ResponseUtils::pathExists(full_path)) status_code = NOT_FOUND; - std::cout << COL_RED << "File really doesn't exist" << END_COL << std::endl; - } else if (req.getMethod() == "GET") handleGet(client, req, full_path); else if (req.getMethod() == "POST") @@ -81,14 +87,12 @@ Response::Response(struct ClientData &client, Request &req) { switch (status_code) { // 30x case MOVED_PERMANENTLY: - std::cout << "MOVED PERMANENTLY" << std::endl; if (body.empty()) body = "

301 Moved Permanently

"; headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; // 40x case FORBIDDEN: - std::cout << "FORBIDDEN" << std::endl; body = ResponseUtils::getErrorPage(FORBIDDEN); headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; @@ -102,17 +106,18 @@ Response::Response(struct ClientData &client, Request &req) { break ; case NOCONTENT: break; + // 50x case INTERNAL_SERVER_ERROR: break; default: status_code = OK; status_text = "OK"; - if (body.empty()) + if (body.empty()) { body = "

All is good

"; - headers["Content-Length"] = ResponseUtils::toString(body.length()); + headers["Content-Length"] = ResponseUtils::toString(body.length()); + } status_code = OK; } - std::cout << "Allowed methods => [" << ResponseUtils::allowHeaderValue(client.server->getAllowedMethods()) << "]" << std::endl; } @@ -140,28 +145,37 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p status_code = OK; } else status_code = FORBIDDEN; - std::cout << COL_YELLOW << "Status setted: " << status_code << END_COL << std::endl; } if (isFile) { - if (!index.empty()) { + if (!index.empty()) path += index; - } if (!path.substr(path.find_last_of('.')).compare(".py") || !path.substr(path.find_last_of('.')).compare(".php")) { body = cgi->executeCgiScript(req, serverEnv); } else { + struct stat fileStat; + !index.empty() - ? fd = ResponseUtils::openFile(req.getPath() + index) + ? fd = ResponseUtils::openFile(req.getPath() + index) : fd = ResponseUtils::openFile(path); + + if (stat(path.c_str(), &fileStat) == -1) { + status_code = INTERNAL_SERVER_ERROR; + return ; + } + headers["Content-Length"] = fileStat.st_size; + std::cout << COL_BLUE << "Content Length is: " << fileStat.st_size << END_COL << std::endl; } } + wServ->enablePOLLOUT(client.fd); client.progress = READY; } void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { (void) req; (void) path; + wServ->enablePOLLOUT(client.fd); client.progress = READY; } @@ -196,5 +210,6 @@ void Response::handleDelete(struct ClientData &client, Request &req, std::string status_code = INTERNAL_SERVER_ERROR; } } + wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/var/www/html/file.html b/var/www/html/file.html new file mode 100644 index 0000000..0ae9ea6 --- /dev/null +++ b/var/www/html/file.html @@ -0,0 +1,16 @@ + + + + + + Document + + + This to test the content length of the file + Lorem ipsum dolor sit amet consectetur adipisicing elit. Quia tenetur nisi non blanditiis minima? Possimus similique ipsa voluptatem, soluta atque vitae doloribus assumenda aliquam ex nesciunt tempore. Officia, magni nemo! Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ut deserunt a recusandae rerum, doloremque tempore laudantium aliquam saepe unde maiores neque dolore molestiae eum sint ullam perferendis iure sequi nisi. + Repellendus ipsam nam temporibus natus officiis quasi consectetur porro, eum iure. Tempore maxime velit ex minima! Quaerat veritatis repellendus nemo fugit, commodi optio deserunt nostrum, pariatur explicabo ducimus delectus velit? + Voluptatem ea quisquam ab vel tempora nesciunt aspernatur beatae deleniti accusamus! Eius, totam nam? Laudantium, numquam impedit repellendus corporis quidem modi earum deleniti provident eligendi sapiente cupiditate ratione corrupti. Sit! + Dolor suscipit perferendis voluptas quas consequuntur, et magni voluptate asperiores ad ducimus odit quia veniam, assumenda praesentium distinctio explicabo excepturi cum voluptates natus non nulla repudiandae quo? Nemo, distinctio corrupti. + Repellat vero placeat eum et exercitationem enim quam ducimus totam ipsam! Recusandae quo fugiat aliquam, expedita accusamus iste! Incidunt aut nihil ea rem commodi similique labore reprehenderit distinctio exercitationem quia. + + \ No newline at end of file From 8173d3ce7cd592387317b94aed7069c26c2c0824 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 14 May 2025 11:35:48 +0100 Subject: [PATCH 29/66] some edits --- headers/WebservHandler.hpp | 4 +- srcs/models/Response.cpp | 4 +- srcs/models/ResponseUtils.cpp | 6 +- upload_FtPars.cpp | 270 ---------------------------------- upload_Makefile | 41 ------ upload_main.cpp | 57 ------- 6 files changed, 7 insertions(+), 375 deletions(-) delete mode 100644 upload_FtPars.cpp delete mode 100644 upload_Makefile delete mode 100644 upload_main.cpp diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 296978c..81370d2 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/13 14:22:46 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 09:59:54 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,7 +25,7 @@ # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 4096 -# define URL_MAX_SIZE 2048 +# define URL_MAX_SIZE 20 # define CHUNCK_SIZE 4096 void processMultipartUpload(ClientData &client); diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 624273c..c9181ec 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/12 12:55:31 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 09:54:06 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index a820b95..d28e9e0 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* ResponseUtils.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/12 09:05:13 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 09:56:16 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -80,7 +80,7 @@ std::string ResponseUtils::isIndexFileExist(std::map &indexes std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { std::string content; - std::string errorsPath = "/Users/mboujama/Desktop/webserv/var/www/html/errors/"; + std::string errorsPath = "var/www/html/errors/"; std::ifstream file; switch (status) { diff --git a/upload_FtPars.cpp b/upload_FtPars.cpp deleted file mode 100644 index 477488a..0000000 --- a/upload_FtPars.cpp +++ /dev/null @@ -1,270 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* FtPars.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/13 15:08:31 by ochouati #+# #+# */ -/* Updated: 2025/02/24 09:48:26 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "./../../../headers/FtPars.hpp" -#include -#include -#include - -/// @brief collection of helper functions for parsing -namespace FtPars { - - static bool isMethodDouplicated(std::vector& vec) { - if (vec.size() > 1) { - for (size_t i = 0; i < vec.size(); i++) { - for (size_t j = i + 1; j < vec.size(); j++) { - if (vec[i] == vec[j]) - return (true); - } - } - } - return (false); - } - - size_t charsCount(std::string& str, char c) { - size_t i = 0; - for (std::string::iterator it = str.begin(); it != str.end(); ++it) { - if (*it == c) - i++; - } - return (i); - } - - bool containSpaces(std::string& str) { - for (size_t i = 0; i < str.size(); i++) { - if (std::isspace(str[i])) - return (true); - } - return (false); - } - - bool strnCompare(std::string& str1, std::string str2, size_t n) { - std::string tmp = str1.substr(0, n); - if (tmp == str2) - return (true); - return (false); - } - - bool isNewServer(std::string& line) - { - if (!line.compare(0, 8, "[server.") && line[0] == '[' && line[line.size() - 1] - && FtPars::charsCount(line, ']') == 1 - && FtPars::charsCount(line, '[') == 1) - return (true); - return (false); - } - - std::string& strTrim(std::string&str, std::string set) - { - size_t f = str.find_first_not_of(set); - if (f != std::string::npos) - str = str.erase(0, f); - size_t l = str.find_last_not_of(set); - if (l != std::string::npos) - str = str.erase(l + 1, str.length()); - return (str); - } - - bool isValidPattern(std::string& str) - { - if (str.empty() || str[0] != '"' || str[str.size() - 1] != '"' || str.size() < 3) - throw std::runtime_error("invalid configs"); - return (true); - } - - bool isValidIP4(std::string& str) - { - if (charsCount(str, '.') != 3) - throw std::runtime_error("invalid configs"); - for (size_t i = 0; i < str.size(); i++) - { - if (str[i] != '.' && !std::isdigit(str[i])) - throw std::runtime_error("invalid configs"); - } - return (true); - } - - /// @brief Convert an IPv4 address from its text representation to binary form - /// @param const std::string& str - /// @return uint32_t (ip) - uint32_t ftInetPton(const std::string& str) - { - std::vector arr; - std::stringstream ss(str); - uint32_t ip = 0; - uint8_t byte; - - while (ss.good()) - { - std::string substr; - getline(ss, substr, '.'); - arr.push_back(substr); - } - if (arr.size() != 4) - return (0); - for (size_t i = 0; i < arr.size(); i++) { - byte = std::atoi(arr[i].c_str()); - ip |= byte << (24 - (i * 8)); - } - return (ip); - } - - std::map parseMethods(const std::map& oldMp, std::string& str) { - std::stringstream ss(str); - std::string tmp; - std::vector arr; - std::map mp = oldMp; - - if (ss.fail()) - throw std::runtime_error("Error parsing methods"); - while (getline(ss, tmp, ',')) - arr.push_back(tmp); - if (arr.empty() || arr.size() > 3) - throw std::runtime_error("Error parsing methods"); - if (isMethodDouplicated(arr)) - throw std::runtime_error("Error parsing methods douplicated"); - for (size_t i = 0; i < arr.size(); i++) { - if (arr[i] == "GET") - mp["GET"] = true; - else if (arr[i] == "POST") - mp["POST"] = true; - else if (arr[i] == "DELETE") - mp["DELETE"] = true; - else - throw std::runtime_error("Error parsing methods"); - } - if (!std::count(arr.begin(), arr.end(), std::string("GET"))) - mp["GET"] = false; - return (mp); - } - - void setServerIndexes(Server& server, std::string& line) { - std::string tmp; - std::stringstream ss(line); - std::vector arr; - - if (ss.fail()) - throw std::runtime_error("Error parsing server indexes"); - while (getline(ss, tmp, ',')) - arr.push_back(tmp); - for (size_t i = 0; i < arr.size(); i++) { - if (FtPars::containSpaces(arr[i])) - throw std::runtime_error("Error parsing server indexes"); - else - server.setIndex(arr[i], true); - } - } - - void autoIndexHandler(Server& server, std::string& line) { - if (line == "on") - server.setAutoIndex(true); - else if (line == "off") - server.setAutoIndex(false); - else - throw std::runtime_error("Error parsing autoindex"); - } - - void serverPortsHandler(Server& srv, std::string& line) { - - std::string tmp; - std::stringstream ss(line); - std::vector arr; - - if (ss.fail()) - throw std::runtime_error("Error parsing server ports"); - while (getline(ss, tmp, ',')) - { - if (!FtPars::isNumbersOnly(tmp)) - throw std::runtime_error("Error parsing server ports"); - arr.push_back(tmp); - } - for (size_t i = 0; i < arr.size(); i++) { - if (FtPars::containSpaces(arr[i])) - throw std::runtime_error("Error parsing server ports"); - else - srv.setPorts(std::atoi(arr[i].c_str())); - } - if (srv.getPorts().size()) - srv.setPort(srv.getPorts()[0]); - } - - bool isNumbersOnly(const std::string& str) { - for (size_t i = 0; i < str.size(); i++) { - if (!std::isdigit(str[i])) - return (false); - } - return (true); - } - - void enableUploadsHandler(Server& server, std::string& line) { - if (line == "on") - server.setEnableUploads(true); - else if (line == "off") - server.setEnableUploads(false); - else - throw std::runtime_error("Error parsing enable uploads"); - } - - std::string toString(size_t nbr) { - std::stringstream ss; - - ss << nbr; - return (ss.str()); - } - - void handleRedirects(Server& server, std::string& line) { - std::string tmp; - std::stringstream ss(line); - std::vector arr; - if (ss.fail()) - throw std::runtime_error("Error parsing server redirects"); - while (getline(ss, tmp, ',')) - arr.push_back(tmp); - for (size_t i = 0; i < arr.size(); i++) { - std::stringstream ss2(arr[i]); - std::string key; - std::string val; - if (getline(ss2, key, ':') && getline(ss2, val, ':')) { - if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) - throw std::runtime_error("Error parsing server redirects"); - server.setRedirects(key, val); - } else - throw std::runtime_error("Error parsing server redirects"); - } - } - - void handleCGIs(Server& server, std::string& line) { - std::string tmp; - std::stringstream ss(line); - std::vector arr; - if (ss.fail()) - throw std::runtime_error("Error parsing server cgis"); - while (getline(ss, tmp, ',')) - arr.push_back(tmp); - for (size_t i = 0; i < arr.size(); i++) { - std::stringstream ss2(arr[i]); - std::string key; - std::string val; - if (getline(ss2, key, ':') && getline(ss2, val, ':')) { - if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) - throw std::runtime_error("Error parsing server cgis"); - server.setCGI(key, val); - } else - throw std::runtime_error("Error parsing server cgis"); - } - } - - size_t getCurrentTimeMs() { - clock_t clock_time = clock(); - return static_cast(clock_time) * 1000 / CLOCKS_PER_SEC; - } -} diff --git a/upload_Makefile b/upload_Makefile deleted file mode 100644 index c2c9e9e..0000000 --- a/upload_Makefile +++ /dev/null @@ -1,41 +0,0 @@ -CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address - -NAME=webserv - -# OTM -SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ -srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ -srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp - -# ACHAKKAF -SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp learning/request.cpp - -# MOAD -SRCS += srcs/models/Response.cpp srcs/models/ResponseUtils.cpp srcs/models/MimeTypes.cpp srcs/models/Cgi.cpp - -#OTM -SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp - -HEADERS=headers/*.hpp -OBJS=$(SRCS:.cpp=.o) - -all: $(NAME) - -$(NAME): $(OBJS) - $(CPP) $(CPPFLAGS) $(OBJS) -o $(NAME) - -%.o: %.cpp $(HEADERS) - $(CPP) $(CPPFLAGS) -c $< -o $@ - -clean: - rm -f $(OBJS) - -fclean: clean - rm -f $(NAME) -tests: - bash test/test01.sh - -re: fclean all - -.PHONY: all clean fclean re \ No newline at end of file diff --git a/upload_main.cpp b/upload_main.cpp deleted file mode 100644 index 899c34e..0000000 --- a/upload_main.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* main.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/01/25 15:41:59 by ochouati #+# #+# */ -/* Updated: 2025/02/13 13:05:36 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "headers/Webserv.hpp" -#include "headers/header.hpp" -#include "headers/debug.hpp"//! -#include "headers/readConfig.hpp" -#include -#include -#include -#include -#include -#include -#include -#include - -char **serverEnv; -std::string *notFound; -WebservHandler *wServ; - -// void ll(){ //! DELETE ME -// system("leaks -q webserv"); -// } - -int server(char *argFile, char **env) { - try { - readConfig conf; - conf.readFile(argFile); - Webserv webserv(conf, env); - webserv.run(); - } catch (const std::exception &e) { - std::cerr << "\033[0;91m ** " << e.what() << " ** \033[0m" << std::endl; - return (1); - } - return (0); -} - -int main(int ac, char **av, char **env) -{ - // atexit(ll); //! -->delete - if (ac != 2) { - std::cout << "config file require!" << std::endl; - return (1); - } - serverEnv = env; - notFound = new std::string("not_found"); - return (server(av[1], env)); -} From 5ae596fb0e135ac2a4c366978a151108d8889472 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 14 May 2025 17:13:57 +0100 Subject: [PATCH 30/66] prepareClientResponse added --- Makefile | 2 +- headers/ClientData.hpp | 10 +++++-- headers/HttpErrors.hpp | 3 +- headers/Response.hpp | 5 ++-- headers/Webserv.hpp | 5 ++-- headers/WebservHandler.hpp | 5 ++-- srcs/models/Response.cpp | 4 +-- srcs/models/Webserv.cpp | 54 +++++++++++++--------------------- srcs/models/WebservHandler.cpp | 29 ++++++++---------- srcs/utils/ClientData.cpp | 19 ++++++++++++ var/www/html/index.html | 12 ++++++++ 11 files changed, 85 insertions(+), 63 deletions(-) create mode 100644 srcs/utils/ClientData.cpp create mode 100644 var/www/html/index.html diff --git a/Makefile b/Makefile index c2c9e9e..e0703c3 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ NAME=webserv # OTM SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ -srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp +srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp srcs/utils/ClientData.cpp \ # ACHAKKAF SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp learning/request.cpp diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 0b5133c..90ec0d1 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,15 +6,18 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/14 09:27:53 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 12:21:29 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once # include "FtPars.hpp" +# include "Response.hpp" #include +class Response; + enum requestType { NOT_SET = -1, CONTENT_LENGTH, @@ -53,10 +56,11 @@ struct ClientData { std::string tmpFileName; int currentFileFd; std::map uploadFd; + Response *resp; //! add map ClientData() : type(NOT_SET), isRequestComplete(false), bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), isHeadersChecked(false), file(-1), server(NULL), bodyReded(-1), progress(NOT_STARTED), - startTime(FtPars::getCurrentTimeMs()), currentFileFd(-1) {} - ~ClientData() {} + startTime(FtPars::getCurrentTimeMs()), currentFileFd(-1), resp(NULL) {} + ~ClientData(); }; diff --git a/headers/HttpErrors.hpp b/headers/HttpErrors.hpp index 105528b..a98d7f0 100644 --- a/headers/HttpErrors.hpp +++ b/headers/HttpErrors.hpp @@ -6,13 +6,14 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/08 15:20:55 by ochouati #+# #+# */ -/* Updated: 2025/05/08 15:25:54 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 12:09:40 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #pragma once #include "WebservHandler.hpp" +struct ClientData; class WebservHandler; class HttpErrors { public: diff --git a/headers/Response.hpp b/headers/Response.hpp index b7ddf1f..5b5a6ef 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/14 11:01:01 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 12:05:28 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,6 +18,7 @@ # include "./MimeTypes.hpp" # include "Cgi.hpp" + class Response : public MimeTypes { private: diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index bdf3a85..ebebef8 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 16:49:53 by ochouati #+# #+# */ -/* Updated: 2025/05/13 13:59:44 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 13:07:06 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -37,7 +37,8 @@ class Webserv : public WebservHandler { void run(); bool isServerSocket(int fd) const; void acceptNewConnection(int srvfd); - void handleClientRequest(int pollIdx, int fd); + void handleClientRequest(int fd); + void prepareClientResponse(ClientData& client); void sendResponse(int fd); void timeoutHandler(void); diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 81370d2..068486c 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/14 09:59:54 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 12:24:03 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,11 +25,12 @@ # define POLL_TIMEOUT 0 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 4096 -# define URL_MAX_SIZE 20 +# define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 void processMultipartUpload(ClientData &client); typedef std::map::iterator mapIt; +struct ClientData; class HttpErrors; class WebservHandler { diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 388b288..2c75bf0 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/14 11:36:24 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 12:01:02 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -155,7 +155,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p } else { struct stat fileStat; - + std::cout << "===> index file: " << path << std::endl; !index.empty() ? fd = ResponseUtils::openFile(req.getPath() + index) : fd = ResponseUtils::openFile(path); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index a81711f..0bd3756 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/12 18:57:12 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 14:47:49 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -61,13 +61,9 @@ void Webserv::run() { if (isServerSocket(_pollfds[i].fd)) this->acceptNewConnection(_pollfds[i].fd); else - this->handleClientRequest(i, _pollfds[i].fd); + this->handleClientRequest(_pollfds[i].fd); } if (_pollfds[i].revents & POLLOUT) { - //? 1. Check if client still exists in _requests - //? 2. check if the request progress is complete - //? 3. send response - //? 4. close client std::cout << COL_BLUE << "Sending response to client..." << END_COL << std::endl; this->sendResponse(_pollfds[i].fd); } @@ -109,7 +105,6 @@ void Webserv::acceptNewConnection(int fd) { std::cout << "(" << fd << ")"<< " accepting new connection..." << std::endl; ClientData newClient; - // newClient.webservHandler = this; try { Server *srv = this->getServerByFd(fd); std::cout << "server port: " << srv->getPort() << "Server name: " << srv->getserverName() << std::endl; @@ -124,26 +119,17 @@ void Webserv::acceptNewConnection(int fd) newClient.fd = clientFd; newClient.server = srv; this->_requests[clientFd] = newClient; - //! delete this at the end - char clientIP[INET_ADDRSTRLEN]; - inet_ntop(AF_INET, &(clientAddress.sin_addr), clientIP, INET_ADDRSTRLEN); - std::cout << "New connection from " << clientIP << ":" << ntohs(clientAddress.sin_port) - << " on server port " << srv->getPort() << std::endl; - //! end delete } catch (const std::exception& e) { std::cerr << e.what() << std::endl; } } -void Webserv::handleClientRequest(int pollIdx, int fd) +void Webserv::handleClientRequest(int fd) { - std::cout << COL_BLUE << "Handling client request..." << END_COL << std::endl; - //! delete this - (void)pollIdx; char buffer[READ_SIZE]; ssize_t bytesRead = recv(fd, buffer, READ_SIZE - 1, 0); std::cout << COL_BLUE << "Bytes read: " << bytesRead << END_COL << std::endl; - if (bytesRead < 0) { //! check this + if (bytesRead < 0) { if (bytesRead == 0) { std::cout << "Client disconnected" << std::endl; } else { @@ -153,34 +139,34 @@ void Webserv::handleClientRequest(int pollIdx, int fd) return; } buffer[bytesRead] = '\0'; - std::cout << "Received request: \n" << "buffer" << std::endl; //! remove this this->_requests[fd].request.append(buffer, bytesRead); - std::cout << COL_RED << " --------------------------------- " << END_COL << std::endl; //! remove this std::map::iterator it = this->_requests.find(fd); - if (it == this->_requests.end()) { - std::cerr << "Error: client not found" << std::endl; - return; - } - // //! change this - // if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) //! - // { - // std::cout << "Client timeout" << std::endl; - // this->_closeClient(fd); - // return; - // } + if (it == this->_requests.end()) return; if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; - // std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; + std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; } if (this->_isRequestComplete(it->second)) { printWarning("Request Ready......................>>>>"); - it->second.progress = READY; - this->enablePOLLOUT(fd); + this->prepareClientResponse(it->second); } } +void Webserv::prepareClientResponse(ClientData& client) +{ + std::cout << COL_BLUE << "Preparing response for client... the progress is: " << (client.progress == COLLECTED ? "Collected" : "Unkown") << END_COL << std::endl; + Request req(client.headers.append(client.request)); + if (!client.resp) + client.resp = new Response(client, req); //! free this + client.progress = READY; + this->enablePOLLOUT(client.fd); + std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; +} + + void Webserv::sendResponse(int fd) //?! Complete the request, you have to send headers, body and file { + std::cout << COL_GREEN << "=========================.." << END_COL << std::endl; mapIt it = this->_requests.find(fd); if (it == this->_requests.end()) { return; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index d21f964..294261d 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/13 18:10:22 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 14:58:17 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -43,7 +43,6 @@ void WebservHandler::_closeClient(int fd) void WebservHandler::setRequestType(ClientData& client) { - printWarning("setRequestType...."); if (client.headers.empty() || client.type != NOT_SET) return; else if (client.method != "POST") @@ -61,7 +60,6 @@ void WebservHandler::setRequestType(ClientData& client) void WebservHandler::setContentLength(ClientData& client) { - printWarning("setContentLength...."); if (!client.isHeaderComplete || client.contentLen != -1 || client.type == NO_CONTENT) return; size_t contentLength = client.headers.find("Content-Length: "); @@ -76,7 +74,6 @@ void WebservHandler::setContentLength(ClientData& client) bool WebservHandler::isHeaderComplete(ClientData& client) { - printWarning("isHeaderComplete...."); size_t pos; if (client.isHeaderComplete) return (true); @@ -95,11 +92,11 @@ bool WebservHandler::isHeaderComplete(ClientData& client) bool WebservHandler::isRequestComplete(ClientData& client) { - printWarning("is Request Complete...."); this->isRequestValid(client); if (!client.isHeaderComplete) return (false); - processMultipartUpload(client); //? .... + if (!client.boundary.empty()) + processMultipartUpload(client); //? .... if (client.type == NO_CONTENT && client.contentLen == -1) return ((client.progress = COLLECTED), true); else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) @@ -115,15 +112,9 @@ bool WebservHandler::isRequestComplete(ClientData& client) bool WebservHandler::isRequestValid(ClientData& client) { - printWarning("isRequestValid...."); if (!client.isHeadersChecked) this->validateRequestHeaders(client); size_t max = client.server->getLimitClientBodySize(); - (void)max; - //! if bad request chunked and content length - //! if bad request content length and no content - //! if bad request no content and chunked - //! if content length more than server limit if (client.bodyReded > static_cast(max)) { HttpErrors::httpResponse413(client); @@ -167,13 +158,19 @@ void WebservHandler::handleRequest(ClientData& client) this->_closeClient(client.fd); return ; } - Request req(client.headers + client.request); - Response *response = new Response(client, req); //! free this - - std::string res = response->combineResponse(); + if (!client.resp) + return; + // Request req(client.headers.append(client.request)); + // if (!client.resp) + // client.resp = new Response(client, req); //! free this + std::string res = client.resp->combineResponse(); + int ffd = client.resp->getFd(); + std::cout << COL_MAGENTA << "File descriptor: " << ffd << END_COL << std::endl; std::cout << "=======>\n" << res << "\n<=======" << std::endl; send(client.fd, res.c_str(), res.size(), 0); this->_closeClient(client.fd); // first should be the send everything + std::cout << COL_GREEN << "======+++ ++++ ++++ +++==========.." << END_COL << std::endl; + } void WebservHandler::validateRequestHeaders(ClientData& client) diff --git a/srcs/utils/ClientData.cpp b/srcs/utils/ClientData.cpp new file mode 100644 index 0000000..91c75fa --- /dev/null +++ b/srcs/utils/ClientData.cpp @@ -0,0 +1,19 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ClientData.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/14 12:20:57 by ochouati #+# #+# */ +/* Updated: 2025/05/14 12:25:39 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "./../../headers/ClientData.hpp" + +ClientData::~ClientData() +{ + delete resp, resp = NULL; +} + diff --git a/var/www/html/index.html b/var/www/html/index.html new file mode 100644 index 0000000..699bf6b --- /dev/null +++ b/var/www/html/index.html @@ -0,0 +1,12 @@ + + + + + + Webserv + + +
+ Welcome to Webserv!
+ + \ No newline at end of file From 77036d67ec17dca09e939be86c512c5e47ca38a2 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Wed, 14 May 2025 18:52:06 +0100 Subject: [PATCH 31/66] style header files --- debug/printing.cpp | 19 ++--- headers/Cgi.hpp | 15 ++-- headers/ClientData.hpp | 79 +++++++----------- headers/FtPars.hpp | 66 +++++---------- headers/HttpErrors.hpp | 6 +- headers/MimeTypes.hpp | 9 +- headers/Response.hpp | 9 +- headers/ResponseUtils.hpp | 50 ++++-------- headers/Server.hpp | 127 +++++++++++++---------------- headers/Types.hpp | 95 +++++++++++++++++++++ headers/Webserv.hpp | 23 ++---- headers/WebservHandler.hpp | 53 +++++------- headers/debug.hpp | 7 +- headers/header.hpp | 20 +++-- headers/readConfig.hpp | 16 ++-- {learning => headers}/request.hpp | 29 +++---- srcs/models/Cgi.cpp | 1 + srcs/models/Response.cpp | 5 +- srcs/models/Server.cpp | 14 +--- srcs/models/Upload.cpp | 48 +---------- srcs/models/Webserv.cpp | 5 +- srcs/models/WebservHandler.cpp | 11 +-- srcs/parsing/config/readConfig.cpp | 2 + srcs/parsing/helpers/FtPars.cpp | 3 - srcs/utils/httpResponseErrors.cpp | 4 +- srcs/utils/serverUtils.cpp | 3 +- 26 files changed, 322 insertions(+), 397 deletions(-) create mode 100644 headers/Types.hpp rename {learning => headers}/request.hpp (76%) diff --git a/debug/printing.cpp b/debug/printing.cpp index 708c6ee..3b2f787 100644 --- a/debug/printing.cpp +++ b/debug/printing.cpp @@ -10,10 +10,9 @@ /* */ /* ************************************************************************** */ -#include -#include -#include +#include "../headers/Types.hpp" #include "../headers/debug.hpp" +#include "../headers/Server.hpp" void printing(std::string vr) { @@ -65,13 +64,13 @@ void printWarning(std::string str) { -enum requestType { - NOT_SET = -1, - CONTENT_LENGTH, - CHUNKED, - NO_CONTENT, - MULTIPART_FORM, -}; +// enum requestType { +// NOT_SET = -1, +// CONTENT_LENGTH, +// CHUNKED, +// NO_CONTENT, +// MULTIPART_FORM, +// }; void printRequestType(int nbr) { diff --git a/headers/Cgi.hpp b/headers/Cgi.hpp index 0d5d21d..1cb293c 100644 --- a/headers/Cgi.hpp +++ b/headers/Cgi.hpp @@ -10,17 +10,18 @@ /* */ /* ************************************************************************** */ -#include "../learning/request.hpp" -#include -#include +#include "request.hpp" +#include "Types.hpp" class Cgi { private: - char **createEnvironmentVariables(Request &request, char **systemEnv); - std::vector extractBinaryPaths(char **environmentVariables); - std::string locateExecutable(const std::vector &searchPaths, const std::string &executableName); + char **createEnvironmentVariables(Request &request, char **systemEnv); + std::vector extractBinaryPaths(char **environmentVariables); + std::string locateExecutable(const std::vector &searchPaths, + const std::string &executableName); + public: Cgi(); ~Cgi(); - std::string executeCgiScript(Request &request, char **systemEnv); + std::string executeCgiScript(Request &request, char **systemEnv); }; diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 90ec0d1..b8e94e1 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -11,56 +11,39 @@ /* ************************************************************************** */ #pragma once - -# include "FtPars.hpp" -# include "Response.hpp" -#include - -class Response; - -enum requestType { - NOT_SET = -1, - CONTENT_LENGTH, - CHUNKED, - NO_CONTENT, - MULTIPART_FORM, -}; - -enum requestProgress { - NOT_STARTED = -1, - WORKING, - COLLECTED, - READY, -}; +#include "Types.hpp" +#include "Server.hpp" +#include "FtPars.hpp" +#include "Response.hpp" struct ClientData { - int fd; - requestType type; - bool isRequestComplete; - size_t bytesSent; //! Why ? - long contentLen; - size_t readed; //! why ? - bool isHeaderComplete; - bool isHeadersChecked; - int file; //! - std::string method; - std::string request; - Server *server; - std::string headers; - long bodyReded; - std::string boundary; - requestProgress progress; - size_t startTime; - std::string error; - std::string tmpFolder; - std::string tmpFileName; - int currentFileFd; - std::map uploadFd; - Response *resp; + int fd; + int file; //! + int currentFileFd; + long contentLen; + long bodyReded; + bool isRequestComplete; + bool isHeaderComplete; + bool isHeadersChecked; + Server *server; + size_t bytesSent; //! Why ? + size_t readed; //! why ? + size_t startTime; + Response *resp; + std::string method; + std::string request; + std::string headers; + std::string boundary; + std::string error; + std::string tmpFolder; + std::string tmpFileName; + requestType type; + requestProgress progress; + std::map uploadFd; //! add map - ClientData() : type(NOT_SET), isRequestComplete(false), - bytesSent(0), contentLen(-1), readed(0), isHeaderComplete(false), - isHeadersChecked(false), file(-1), server(NULL), bodyReded(-1), progress(NOT_STARTED), - startTime(FtPars::getCurrentTimeMs()), currentFileFd(-1), resp(NULL) {} + ClientData() : file(-1),currentFileFd(-1) ,contentLen(-1), bodyReded(-1), isRequestComplete(false), isHeaderComplete(false),isHeadersChecked(false), + server(NULL), bytesSent(0),readed(0),startTime(FtPars::getCurrentTimeMs()),resp(NULL), type(NOT_SET), progress(NOT_STARTED){} ~ClientData(); }; + +typedef std::map::iterator mapIt; diff --git a/headers/FtPars.hpp b/headers/FtPars.hpp index 285fbe4..c89264b 100644 --- a/headers/FtPars.hpp +++ b/headers/FtPars.hpp @@ -12,49 +12,27 @@ #pragma once -#include -# include -# include -# include -# include -# include -# include -# include "Server.hpp" -#include - -typedef unsigned int uint32_t; -typedef unsigned char uint8_t; - -#define FT_LIMIT_BODY_SIZE 80000 -#define FT_PORT 8080 -# define ALLOWED_CHARS "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~:/?#[]@!$&'()*+,;=" -# define COL_RED "\033[0;91m" -# define COL_GREEN "\033[0;92m" -# define COL_YELLOW "\033[0;93m" -# define COL_BLUE "\033[0;94m" -# define COL_MAGENTA "\033[0;95m" -# define END_COL "\033[0m" - -class Server; +#include "Types.hpp" +#include "Server.hpp" namespace FtPars { - size_t charsCount(std::string& str, char c); - bool strnCompare(std::string& str1, std::string str2, size_t n); - bool isNewServer(std::string& line); - std::string& strTrim(std::string&str, std::string set); - bool isValidPattern(std::string& str); - bool isValidIP4(std::string& str); - uint32_t ftInetPton(const std::string& str); //! delete this - char *stringToChar(std::string& str); - std::map parseMethods(const std::map& oldMp, std::string& str); - void setServerIndexes(Server& server, std::string& line); - bool containSpaces(std::string& str); - void autoIndexHandler(Server& server, std::string& line); - void serverPortsHandler(Server& srv, std::string& line); - bool isNumbersOnly(const std::string& str); - void enableUploadsHandler(Server& server, std::string& line); - std::string toString(size_t nbr); - void handleRedirects(Server& server, std::string& line); - size_t hexaToNbr(std::string& str); //! not created yet - void handleCGIs(Server& server, std::string& line); - size_t getCurrentTimeMs(); + void setServerIndexes(Server& server, std::string& line); + void autoIndexHandler(Server& server, std::string& line); + void serverPortsHandler(Server& srv, std::string& line); + void enableUploadsHandler(Server& server, std::string& line); + void handleRedirects(Server& server, std::string& line); + void handleCGIs(Server& server, std::string& line); + char *stringToChar(std::string& str); + bool strnCompare(std::string& str1, std::string str2, size_t n); + bool isNewServer(std::string& line); + bool isValidPattern(std::string& str); + bool isValidIP4(std::string& str); + bool containSpaces(std::string& str); + bool isNumbersOnly(const std::string& str); + size_t hexaToNbr(std::string& str); //! not created yet + size_t getCurrentTimeMs(); + size_t charsCount(std::string& str, char c); + uint32_t ftInetPton(const std::string& str); //! delete this + std::string& strTrim(std::string&str, std::string set); + std::string toString(size_t nbr); + std::map parseMethods(const std::map& oldMp, std::string& str); } diff --git a/headers/HttpErrors.hpp b/headers/HttpErrors.hpp index a98d7f0..adfca94 100644 --- a/headers/HttpErrors.hpp +++ b/headers/HttpErrors.hpp @@ -11,10 +11,8 @@ /* ************************************************************************** */ #pragma once -#include "WebservHandler.hpp" - -struct ClientData; -class WebservHandler; +#include "Types.hpp" +#include "ClientData.hpp" class HttpErrors { public: static void httpResponse400(ClientData& client); diff --git a/headers/MimeTypes.hpp b/headers/MimeTypes.hpp index ea8f302..b3b011c 100644 --- a/headers/MimeTypes.hpp +++ b/headers/MimeTypes.hpp @@ -12,15 +12,14 @@ #pragma once -# include -# include +#include "Types.hpp" -class MimeTypes { +class MimeTypes { private: - std::map types; + std::map types; public: MimeTypes(); ~MimeTypes(); - std::string getMimeType(std::string filepath); + std::string getMimeType(std::string filepath); }; diff --git a/headers/Response.hpp b/headers/Response.hpp index 5b5a6ef..00a2293 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -12,12 +12,9 @@ #pragma once -# include "../learning/request.hpp" -# include "./WebservHandler.hpp" -# include "./ResponseUtils.hpp" -# include "./MimeTypes.hpp" -# include "Cgi.hpp" - +# include "Types.hpp" +#include "MimeTypes.hpp" +#include "Cgi.hpp" class Response : public MimeTypes { diff --git a/headers/ResponseUtils.hpp b/headers/ResponseUtils.hpp index a47ddf0..83ba959 100644 --- a/headers/ResponseUtils.hpp +++ b/headers/ResponseUtils.hpp @@ -12,43 +12,21 @@ #pragma once -# include -# include -# include -# include -# include -# include -# include -# include -# include -# include - -enum RESPONSE_CODE { - NOT_FOUND = 404, - MOVED_PERMANENTLY = 301, - METHOD_NOT_ALLOWED = 405, - FORBIDDEN = 403, - OK = 200, - CGI, - CREATED = 201, - CONFLICT = 409, - NOCONTENT = 204, - INTERNAL_SERVER_ERROR = 500 -}; +# include "Types.hpp" class ResponseUtils { public: - static std::string getDateTime(); - static std::string allowHeaderValue(std::map allowedMethods); - static bool pathExists(const std::string& path); - static bool isDirectory(const std::string& path); - static int openFile(const std::string& filepath); - static std::string toString(long value); - static std::string isIndexFileExist(std::map &indexes, const std::string &path); - static std::string getErrorPage(RESPONSE_CODE status); - static std::string getMimeType(std::string filepath); - static std::string generateAutoIndex(std::string filepath); - static bool deleteFile(const std::string& path); - static bool deleteFolder(const std::string& path); - static std::string getAllowHeader(const std::map allowed); + static int openFile(const std::string& filepath); + static bool pathExists(const std::string& path); + static bool isDirectory(const std::string& path); + static bool deleteFile(const std::string& path); + static bool deleteFolder(const std::string& path); + static std::string getDateTime(); + static std::string allowHeaderValue(std::map allowedMethods); + static std::string toString(long value); + static std::string isIndexFileExist(std::map &indexes, const std::string &path); + static std::string getErrorPage(RESPONSE_CODE status); + static std::string getMimeType(std::string filepath); + static std::string generateAutoIndex(std::string filepath); + static std::string getAllowHeader(const std::map allowed); }; \ No newline at end of file diff --git a/headers/Server.hpp b/headers/Server.hpp index f710161..7f1dd65 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -11,104 +11,91 @@ /* ************************************************************************** */ #pragma once -#include -# include -# include -#include -# include -# include -# include -# include -# include -# include "FtPars.hpp" -#ifndef SO_NOSIGPIPE -#define SO_NOSIGPIPE 0x1022 -#endif +# include "Types.hpp" -#define LISTEN_BACKLOG 12 //! should we increase this ? -#define DEFAULT_ROOT_PATH "./website" -#define BODY_TEMP_PATH "./tmp/path" - -typedef unsigned int uint32_t; /// @brief server class that hold data for each website class Server { private: - std::string host; - uint32_t port; + int serverSocket; + int serverBind; + int serverListenFd; + void ftSocket(void); + void ftBind(void); + void ftListen(void); + void setSocketOptions(void); + bool enableUploads; //? ! + bool autoIndex; //? size_t timeout; + uint32_t port; + uint32_t limitClientBodySize; + std::string host; std::string serverName; std::string rootPath; - uint32_t limitClientBodySize; std::string clientBodyTempPath; std::string errorPage404; std::string errorPage500; std::string uploadsPath; + std::vector ports; std::map allowedMethods; //? std::map indexes; std::map redirects; std::map cgis; - std::vector ports; - bool enableUploads; //? ! - bool autoIndex; //? - int serverSocket; - int serverBind; - int serverListenFd; - void ftSocket(void); - void ftBind(void); - void ftListen(void); - void setSocketOptions(void); // utils functions - std::string& validateAndTrim(std::string& str); void fillServerData(std::string& line, Server& srv); void setServer(std::vector& arr, size_t& idx, Server& srv); + std::string& validateAndTrim(std::string& str); public: + static void setNonBlocking(int fd); + Server(const Server& srv, uint32_t port); Server(void); ~Server(void); - static void setNonBlocking(int fd); Server(std::vector& arr, size_t& idx); + //? Getters - uint32_t getPort(void) const; - size_t getTimeout(void) const; - const std::string& getClientBodyTempPath(void) const; - const std::string& getUploadsPath(void) const; - std::string getHost(void) const; - std::string getserverName(void) const; - std::string getRootPath(void) const; - uint32_t getLimitClientBodySize(void) const; - std::string getErrorPage404(void) const; - std::string getErrorPage500(void) const; - std::map getAllowedMethods(void) const; - std::map getIndexes(void) const; - bool getAutoIndex(void) const; - const std::vector& getPorts(void) const; - bool getEnableUploads(void) const; - int getSocket() const; - std::map& getRedirects(void); - const std::string& getCGI(std::string& val) const; - const std::map& getCGIs() const; + int getSocket() const; + bool getAutoIndex(void) const; + bool getEnableUploads(void) const; + size_t getTimeout(void) const; + uint32_t getPort(void) const; + uint32_t getLimitClientBodySize(void) const; + std::string getHost(void) const; + std::string getserverName(void) const; + std::string getRootPath(void) const; + std::string getErrorPage404(void) const; + std::string getErrorPage500(void) const; + const std::string& getClientBodyTempPath(void) const; + const std::string& getUploadsPath(void) const; + const std::string& getCGI(std::string& val) const; + std::map getAllowedMethods(void) const; + std::map getIndexes(void) const; + const std::vector& getPorts(void) const; + std::map& getRedirects(void); + const std::map& getCGIs() const; + //? Setters - void setPort(uint32_t val); - void setTimeout(size_t val); - void setHost(std::string& val); - void setserverName(std::string& val); - void setLimitClientBodySize(uint32_t val); - void setClientBodyTempPath(std::string& val); - void setUploadsPath(std::string& val); - void setErrorPage404(std::string& val); - void setErrorPage500(std::string& val); - void setIndex(std::string& key, bool val); - void setMethods(std::map mp); - void setAutoIndex(bool val); - void setPorts(uint32_t val); - void setEnableUploads(bool val); - void setRootPath(std::string& val); - void setRedirects(const std::string& key, const std::string& val); - void setCGI(std::string& key, std::string& val); + void setPort(uint32_t val); + void setTimeout(size_t val); + void setHost(std::string& val); + void setserverName(std::string& val); + void setLimitClientBodySize(uint32_t val); + void setClientBodyTempPath(std::string& val); + void setUploadsPath(std::string& val); + void setErrorPage404(std::string& val); + void setErrorPage500(std::string& val); + void setIndex(std::string& key, bool val); + void setMethods(std::map mp); + void setAutoIndex(bool val); + void setPorts(uint32_t val); + void setEnableUploads(bool val); + void setRootPath(std::string& val); + void setRedirects(const std::string& key, const std::string& val); + void setCGI(std::string& key, std::string& val); + // Server_handlers - void initServer(void); + void initServer(void); }; diff --git a/headers/Types.hpp b/headers/Types.hpp new file mode 100644 index 0000000..3fce11d --- /dev/null +++ b/headers/Types.hpp @@ -0,0 +1,95 @@ +#pragma once + +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +#include +#include +#include +#include // For getaddrinfo + + + + +# define FIRST_INDEX 0 + +# define FT_LIMIT_BODY_SIZE 80000 +# define FT_PORT 8080 + +# define ALLOWED_CHARS "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~:/?#[]@!$&'()*+,;=" + +# define COL_RED "\033[0;91m" +# define COL_GREEN "\033[0;92m" +# define COL_YELLOW "\033[0;93m" +# define COL_BLUE "\033[0;94m" +# define COL_MAGENTA "\033[0;95m" +# define END_COL "\033[0m" + +#ifndef SO_NOSIGPIPE +#define SO_NOSIGPIPE 0x1022 +#endif + +#define LISTEN_BACKLOG 12 //! should we increase this ? +#define DEFAULT_ROOT_PATH "./website" +#define BODY_TEMP_PATH "./tmp/path" + + +# define RUNNING 1 +# define POLL_TIMEOUT 0 +# define END_OF_HEADERS "\r\n\r\n" +# define READ_SIZE 4096 +# define URL_MAX_SIZE 2048 +# define CHUNCK_SIZE 4096 + +#define CHARS_SIZE 256 + + +enum requestType { + NOT_SET = -1, + CONTENT_LENGTH, + CHUNKED, + NO_CONTENT, + MULTIPART_FORM, +}; + +enum requestProgress { + NOT_STARTED = -1, + WORKING, + COLLECTED, + READY, +}; + +enum RESPONSE_CODE { + NOT_FOUND = 404, + MOVED_PERMANENTLY = 301, + METHOD_NOT_ALLOWED = 405, + FORBIDDEN = 403, + OK = 200, + CGI, + CREATED = 201, + CONFLICT = 409, + NOCONTENT = 204, + INTERNAL_SERVER_ERROR = 500 +}; + +typedef unsigned int uint32_t; +typedef unsigned char uint8_t; + + diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index ebebef8..5b6c19e 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -12,34 +12,29 @@ #pragma once -#include "ClientData.hpp" -# include "WebservHandler.hpp" -# include "readConfig.hpp" -#include -# include -# include -# include - +#include "Types.hpp" +#include "WebservHandler.hpp" +#include "readConfig.hpp" class Webserv : public WebservHandler { private: - readConfig *_config; int _nbrEvents; + void _init(); + bool _isRequestComplete(ClientData& client); + readConfig *_config; std::vector _envs; - bool _isRequestComplete(ClientData& client); - void _init(); public: Webserv(); - Webserv(readConfig& config, char **env); ~Webserv(); + Webserv(readConfig& config, char **env); + Server* getServerByFd(int fd); void run(); - bool isServerSocket(int fd) const; void acceptNewConnection(int srvfd); void handleClientRequest(int fd); void prepareClientResponse(ClientData& client); void sendResponse(int fd); void timeoutHandler(void); - + bool isServerSocket(int fd) const; }; diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 068486c..57b26d1 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -12,49 +12,34 @@ #pragma once -#include -#include -#include -#include -#include + +#include "Types.hpp" #include "ClientData.hpp" -#include "HttpErrors.hpp" -#include "debug.hpp" - -# define RUNNING 1 -# define POLL_TIMEOUT 0 -# define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 4096 -# define URL_MAX_SIZE 2048 -# define CHUNCK_SIZE 4096 - -void processMultipartUpload(ClientData &client); -typedef std::map::iterator mapIt; -struct ClientData; -class HttpErrors; + class WebservHandler { protected: + bool isRequestValid(ClientData& client); + bool isHeaderComplete(ClientData& client); + bool isRequestComplete(ClientData& client); + void setRequestType(ClientData& client); + void setContentLength(ClientData& client); + void handleRequest(ClientData& client); + void _closeClient(int fd); + void setBoundary(ClientData& client); + void setMethod(ClientData& client); + + //* Validate the request + void validateRequestHeaders(ClientData& client); + void validateUrl(ClientData& client); + std::vector _servers; std::vector _pollfds; std::map _requests; - void setRequestType(ClientData& client); - void setContentLength(ClientData& client); - bool isHeaderComplete(ClientData& client); - bool isRequestComplete(ClientData& client); - bool isRequestValid(ClientData& client); - void handleRequest(ClientData& client); - void _closeClient(int fd); - void setBoundary(ClientData& client); - void setMethod(ClientData& client); - //* Validate the request - void validateRequestHeaders(ClientData& client); - void validateUrl(ClientData& client); public: WebservHandler(); - void enablePOLLOUT(int fd); - ~WebservHandler(); + ~WebservHandler(); + void enablePOLLOUT(int fd); }; -extern WebservHandler *wServ; diff --git a/headers/debug.hpp b/headers/debug.hpp index f213b51..e86af4d 100644 --- a/headers/debug.hpp +++ b/headers/debug.hpp @@ -12,12 +12,7 @@ #pragma once -#include "FtPars.hpp" -#include "header.hpp" -#include "Server.hpp" -#include "readConfig.hpp" -#include -#include +#include "Types.hpp" class Server; void printing(std::string vr); diff --git a/headers/header.hpp b/headers/header.hpp index 64d1150..715f725 100644 --- a/headers/header.hpp +++ b/headers/header.hpp @@ -11,13 +11,17 @@ /* ************************************************************************** */ #pragma once +// rename it to tooles; +# include "Types.hpp" +#include "WebservHandler.hpp" +// #include "Cgi.hpp" +#include "ClientData.hpp" +#include "debug.hpp" +#include "FtPars.hpp" -# include -# include -# include -# define FIRST_INDEX 0 +extern char **serverEnv; +extern std::string *notFound; +extern WebservHandler *wServ; -extern char **serverEnv; -extern std::string *notFound; - -std::string& strTrim(std::string&str, std::string set); //! \ No newline at end of file +std::string& strTrim(std::string&str, std::string set); //! +void processMultipartUpload(ClientData &client); diff --git a/headers/readConfig.hpp b/headers/readConfig.hpp index 1aefa73..903b471 100644 --- a/headers/readConfig.hpp +++ b/headers/readConfig.hpp @@ -12,15 +12,8 @@ #pragma once -#include -#include -#include -#include -#include "./header.hpp" -#include "./Server.hpp" -#include "./FtPars.hpp" -#include "./debug.hpp" - +#include "Types.hpp" +#include "Server.hpp" class readConfig { private: @@ -32,9 +25,10 @@ class readConfig { public: readConfig(void); ~readConfig(void); - void readFile(char *argFile); - void seperateServers(void); + void readFile(char *argFile); + void seperateServers(void); std::vector& getServers(); + class OpenFileException : public std::exception { public: const char* what() const throw(); diff --git a/learning/request.hpp b/headers/request.hpp similarity index 76% rename from learning/request.hpp rename to headers/request.hpp index a32323b..c324bf7 100644 --- a/learning/request.hpp +++ b/headers/request.hpp @@ -1,37 +1,32 @@ #pragma once - -#include -#include -#include -#include +#include "Types.hpp" class Request { private: std::string method; std::string path; - std::vector vQuery; std::string query; std::string version; - std::map headerPairs; std::string body; - + std::vector vQuery; + std::map headerPairs; std::vector vEnv; + public: - Request( const std::string& requestString); + Request(const std::string& requestString); + ~Request(); + + void setPath(std::string &newPath); + void convertToEnv(void); + void printHeaders(void) const; + size_t getQuerySize(void) const; + size_t getEnvSize(void) const; std::string getMethod(void) const; std::string getPath(void) const; std::string getVersion(void) const; std::string getHeader(const std::string &key) const; std::string getQuery(const size_t i) const; std::string getQuery() const; - size_t getQuerySize(void) const; std::string getBody(void) const; - void setPath(std::string &newPath); - void convertToEnv(void); - // std::pair getHeader(size_t index) const; - void printHeaders(void) const; std::string getEnv(size_t i) const; - size_t getEnvSize(void) const; - - ~Request(); }; diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 5bb400c..17cadaf 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -129,6 +129,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) } close(pipeFd[0]); waitpid(processId, NULL, 0); + // delete temp files in temp folder } else exit(EXIT_FAILURE); diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 2c75bf0..78ca576 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -11,8 +11,9 @@ /* ************************************************************************** */ #include "./../../headers/Response.hpp" -#include -#include +#include "./../../headers/ResponseUtils.hpp" +#include "./../../headers/ClientData.hpp" +#include "./../../headers/header.hpp" Response::Response(void) {} diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 195b348..19d23a8 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -10,18 +10,8 @@ /* */ /* ************************************************************************** */ -#include "./../../headers/Server.hpp" -#include "./../../headers/Webserv.hpp" -#include "./../../headers/debug.hpp" //! -#include -#include - - -//? -#include -#include -#include -#include // For getaddrinfo +#include "./../../headers/header.hpp" + Server::Server(void)//! why ? { diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 4a2dae5..a036df3 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -1,10 +1,5 @@ #include "./../../headers/Webserv.hpp" -#include -#include -#include -#include -#include -#include + /*-------- LARGE FILES ALGORITHM: --------*/ // Receive chunk → store in buffer @@ -21,44 +16,6 @@ // Rename temp files to final names /*-----------------------------------------*/ -#define CHARS_SIZE 256 - -// void badCharHeuristic(std::string pattern, size_t size, int badChar[CHARS_SIZE]) -// { -// for (size_t i = 0; i < CHARS_SIZE; ++i) -// badChar[i] = -1; - -// for (size_t i = 0; i < size; ++i) -// badChar[(size_t)pattern[i]] = i; -// } - -// // the txt variable should stay string not string& because i pass a char[n] to it. -// int search(const std::string &txt, const std::string &pattern) -// { -// if (pattern.empty() || txt.empty()) -// return -1; - -// int badChar[CHARS_SIZE]; - -// int patternSize = pattern.size(); -// int txtSize = txt.size(); -// badCharHeuristic(pattern, patternSize, badChar); - -// int skip = 0; -// int i = 0; -// int j; -// while (i <= txtSize - patternSize) -// { -// j = patternSize - 1; -// while (j >= 0 && pattern[j] == txt[i + j]) -// --j; -// if (j < 0) -// return i; -// skip = std::max(1, j - badChar[(int)txt[i + j]]); -// i += skip; -// } -// return -1; -// } /// get file name from a buffer request std::string getFileName(const std::string &buffer){ @@ -91,7 +48,6 @@ void processMultipartUpload(ClientData &client) { ssize_t written; - while(!client.request.empty()) { if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ size_t headers = client.request.find("\r\n\r\n"); @@ -99,7 +55,7 @@ void processMultipartUpload(ClientData &client) if (headers != std::string::npos) { fileName = getFileName(client.request); if (!fileName.empty()) { - client.tmpFileName = "upload_" + fileName; //! remove prefix & chan + client.tmpFileName = "upload_" + fileName; //! remove prefix & chan + add temp folder if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) close(client.uploadFd[client.tmpFileName]); client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 0bd3756..9eb2918 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -11,9 +11,8 @@ /* ************************************************************************** */ #include "./../../headers/Webserv.hpp" -#include -#include -#include +#include "./../../headers/header.hpp" + Webserv::Webserv() { } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 294261d..dc00eaa 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -10,14 +10,9 @@ /* */ /* ************************************************************************** */ -#include "./../../headers/WebservHandler.hpp" -#include "./../../headers/Response.hpp" -#include -#include -#include -#include -#include -#include +#include "./../../headers/header.hpp" +#include "./../../headers/HttpErrors.hpp" + WebservHandler::WebservHandler() { wServ = this; diff --git a/srcs/parsing/config/readConfig.cpp b/srcs/parsing/config/readConfig.cpp index 7985dd5..221411d 100644 --- a/srcs/parsing/config/readConfig.cpp +++ b/srcs/parsing/config/readConfig.cpp @@ -11,6 +11,8 @@ /* ************************************************************************** */ #include "./../../../headers/readConfig.hpp" +#include "./../../../headers/FtPars.hpp" +#include "./../../../headers/header.hpp" readConfig::readConfig(void) { diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index 477488a..1208ff6 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -11,9 +11,6 @@ /* ************************************************************************** */ #include "./../../../headers/FtPars.hpp" -#include -#include -#include /// @brief collection of helper functions for parsing namespace FtPars { diff --git a/srcs/utils/httpResponseErrors.cpp b/srcs/utils/httpResponseErrors.cpp index 953963f..8bcb26a 100644 --- a/srcs/utils/httpResponseErrors.cpp +++ b/srcs/utils/httpResponseErrors.cpp @@ -11,8 +11,8 @@ /* ************************************************************************** */ #include "./../../headers/HttpErrors.hpp" -#include -#include +#include "./../../headers/header.hpp" + void HttpErrors::httpResponse414(ClientData& client) { std::string response = "HTTP/1.1 414 Request-URI Too Long\r\n" diff --git a/srcs/utils/serverUtils.cpp b/srcs/utils/serverUtils.cpp index e2dc518..0134dca 100644 --- a/srcs/utils/serverUtils.cpp +++ b/srcs/utils/serverUtils.cpp @@ -10,7 +10,8 @@ /* */ /* ************************************************************************** */ -#include "./../../headers/Server.hpp" +#include "../../headers/Server.hpp" +#include "../../headers/FtPars.hpp" std::string& Server::validateAndTrim(std::string& str) { From 1124314125ed235fbd6d5406956a9331e57441b7 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 14 May 2025 18:55:41 +0100 Subject: [PATCH 32/66] something comming.. --- headers/Response.hpp | 4 ++-- srcs/models/Webserv.cpp | 3 ++- srcs/models/WebservHandler.cpp | 8 +++----- websites/main/index.html | 4 ++-- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/headers/Response.hpp b/headers/Response.hpp index 5b5a6ef..0a446c6 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/14 12:05:28 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 17:44:41 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -33,7 +33,6 @@ class Response : public MimeTypes std::map headers; std::string body; std::string date; - int fd; void handleGet(struct ClientData &client, Request &req, std::string &path); void handlePost(struct ClientData &client, Request &req, std::string &path); @@ -42,6 +41,7 @@ class Response : public MimeTypes int checkRequestedPath(struct ClientData &client, const std::string &req); int checkAllowedMethods(struct ClientData &client, const Request &req); public: + int fd; Response(struct ClientData &clientData , Request &request); ~Response(); std::string combineResponse(); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 0bd3756..33ccfb1 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,13 +6,14 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/14 14:47:49 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 17:58:43 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "./../../headers/Webserv.hpp" #include #include +#include #include Webserv::Webserv() { diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 294261d..e24fbbe 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/14 14:58:17 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 17:56:43 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,6 +18,7 @@ #include #include #include +#include WebservHandler::WebservHandler() { wServ = this; @@ -159,10 +160,7 @@ void WebservHandler::handleRequest(ClientData& client) return ; } if (!client.resp) - return; - // Request req(client.headers.append(client.request)); - // if (!client.resp) - // client.resp = new Response(client, req); //! free this + return this->_closeClient(client.fd); std::string res = client.resp->combineResponse(); int ffd = client.resp->getFd(); std::cout << COL_MAGENTA << "File descriptor: " << ffd << END_COL << std::endl; diff --git a/websites/main/index.html b/websites/main/index.html index 3f361ef..c0ce54f 100644 --- a/websites/main/index.html +++ b/websites/main/index.html @@ -85,7 +85,7 @@

Project Team

- Otmane Chouati + Otmane Chouati

Otmane Chouati

Backend Developer

@@ -111,7 +111,7 @@

Abdelaziz Chakkaf

- Moad Boujamaa + Moad Boujamaa

Moad Boujamaa

System Engineer

From 1c07ec44837dc2ec4334172fd47fb78a0a027fe5 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Thu, 15 May 2025 09:36:52 +0100 Subject: [PATCH 33/66] add getHeadersString function --- headers/Response.hpp | 3 ++- srcs/models/Response.cpp | 13 +++++++++++-- srcs/models/WebservHandler.cpp | 6 +++--- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/headers/Response.hpp b/headers/Response.hpp index b7ddf1f..f2a3a84 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/14 11:01:01 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 12:58:41 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -47,4 +47,5 @@ class Response : public MimeTypes int getFd() const; std::string getBody() const; std::map getHeaders() const; + std::string getHeadersString() const; }; diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 0d2d39c..d47d668 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/14 11:02:08 by mboujama ### ########.fr */ +/* Updated: 2025/05/14 13:04:27 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -39,10 +39,19 @@ std::map Response::getHeaders() const { return headers; } +std::string Response::getHeadersString() const { + std::ostringstream res; + + std::map::const_iterator it; + for (it = headers.begin(); it != headers.end(); it++) + res << it->first << ": " << it->second << "\r\n"; + return res.str(); +} + + std::string Response::combineResponse(void) { std::ostringstream res; - headers["Date"] = ResponseUtils::getDateTime(); res << http_version << " " << status_code << " " << status_text << "\r\n"; std::map::iterator it; for (it = headers.begin(); it != headers.end(); it++) diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index d21f964..82f189e 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* WebservHandler.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/13 18:10:22 by ochouati ### ########.fr */ +/* Updated: 2025/05/14 13:05:05 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -169,7 +169,7 @@ void WebservHandler::handleRequest(ClientData& client) } Request req(client.headers + client.request); Response *response = new Response(client, req); //! free this - + std::cout << COL_BLUE << "FD: ===> " << response->getFd() << END_COL << std::endl; std::string res = response->combineResponse(); std::cout << "=======>\n" << res << "\n<=======" << std::endl; send(client.fd, res.c_str(), res.size(), 0); From fb4e00332eee5cea6480a2760c06f63740751bf8 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Thu, 15 May 2025 11:35:40 +0100 Subject: [PATCH 34/66] fix index fd bug --- req.rest | 2 +- srcs/models/Response.cpp | 19 ++++++++++--------- srcs/models/ResponseUtils.cpp | 6 ++++-- srcs/models/Webserv.cpp | 5 ++--- srcs/models/WebservHandler.cpp | 19 ++++++++++++++----- var/www/html/file.txt | 1 + 6 files changed, 32 insertions(+), 20 deletions(-) create mode 100644 var/www/html/file.txt diff --git a/req.rest b/req.rest index fd54b58..bf6f656 100644 --- a/req.rest +++ b/req.rest @@ -1,4 +1,4 @@ -GET http://127.0.0.1:8080/file.html HTTP/1.1 +GET http://127.0.0.1:8080 HTTP/1.1 Connection: "keep-alive" ### diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index b6d6fe3..9773c6c 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/15 09:47:10 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 11:34:11 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,10 +14,14 @@ #include "../../headers/ResponseUtils.hpp" #include "../../headers/ClientData.hpp" #include "../../headers/header.hpp" +#include Response::Response(void) {} -Response::~Response(void) {} +Response::~Response(void) { + if (fd != -1) + close(fd); +} Response::Response(const Response& obj) { *this = obj; @@ -130,7 +134,6 @@ Response::Response(struct ClientData &client, Request &req) { } } - void Response::handleGet(struct ClientData &client, Request &req, std::string &path) { bool isFile = true; std::string index; @@ -159,17 +162,15 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (isFile) { if (!index.empty()) path += index; + std::cout << COL_MAGENTA << "Path: " << path << END_COL << std::endl; if (!path.substr(path.find_last_of('.')).compare(".py") || !path.substr(path.find_last_of('.')).compare(".php")) { body = cgi->executeCgiScript(req, serverEnv); } else { struct stat fileStat; - std::cout << "===> index file: " << path << std::endl; - !index.empty() - ? fd = ResponseUtils::openFile(req.getPath() + index) - : fd = ResponseUtils::openFile(path); - + + fd = ResponseUtils::openFile(path); if (stat(path.c_str(), &fileStat) == -1) { status_code = INTERNAL_SERVER_ERROR; return ; diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index eed552f..b1e490f 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -3,14 +3,15 @@ /* ::: :::::::: */ /* ResponseUtils.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/14 11:36:36 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 11:31:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" +#include std::string ResponseUtils::getDateTime() { time_t rawtime; @@ -72,6 +73,7 @@ std::string ResponseUtils::isIndexFileExist(std::map &indexes while ((ent = readdir(dir))) { if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) continue ; + std::cout << "Inside find index loop" << std::endl; if ((it = indexes.find(ent->d_name)) != indexes.end()) return it->first; } diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 9f63ef2..fe0bf98 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Webserv.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/14 19:02:30 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 11:00:32 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -159,7 +159,6 @@ void Webserv::prepareClientResponse(ClientData& client) client.resp = new Response(client, req); //! free this client.progress = READY; this->enablePOLLOUT(client.fd); - std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index cf60b11..3223bad 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -3,15 +3,16 @@ /* ::: :::::::: */ /* WebservHandler.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/15 09:47:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 11:21:25 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/header.hpp" #include "../../headers/HttpErrors.hpp" +#include WebservHandler::WebservHandler() { @@ -156,13 +157,21 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.resp) return this->_closeClient(client.fd); std::string res = client.resp->combineResponse(); - int ffd = client.resp->getFd(); - std::cout << COL_MAGENTA << "File descriptor: " << ffd << END_COL << std::endl; + std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; + std::cout << COL_MAGENTA << "FD: " << client.resp->getFd() << COL_MAGENTA << std::endl; + std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; std::cout << "=======>\n" << res << "\n<=======" << std::endl; + + char buffer[1024]; + + std::cout << COL_BLUE << "Start reading" << END_COL << std::endl; + read(client.resp->getFd(), buffer, sizeof(buffer)); + std::cout << buffer << std::endl; + std::cout << COL_BLUE << "End Reading" << END_COL << std::endl; + send(client.fd, res.c_str(), res.size(), 0); this->_closeClient(client.fd); // first should be the send everything std::cout << COL_GREEN << "======+++ ++++ ++++ +++==========.." << END_COL << std::endl; - } void WebservHandler::validateRequestHeaders(ClientData& client) diff --git a/var/www/html/file.txt b/var/www/html/file.txt new file mode 100644 index 0000000..5069a31 --- /dev/null +++ b/var/www/html/file.txt @@ -0,0 +1 @@ +One foot in front of the other, One more step, and then one more. Jack's only thoughts were to keep moving no matter how much his body screamed to stop and rest. He's lost almost all his energy and his entire body ached beyond belief, but he forced himself to take another step. Then another. And then one more. \ No newline at end of file From 2cdc046229a6a6015de91e3c4b297f41ef209f39 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Thu, 15 May 2025 13:30:06 +0100 Subject: [PATCH 35/66] fix directory leaks --- Makefile | 2 +- headers/Types.hpp | 1 - req.rest | 2 +- srcs/models/Response.cpp | 17 ++--------------- srcs/models/ResponseUtils.cpp | 18 +++++++++++++----- srcs/models/Webserv.cpp | 11 ++--------- srcs/models/WebservHandler.cpp | 24 ++---------------------- 7 files changed, 21 insertions(+), 54 deletions(-) diff --git a/Makefile b/Makefile index e0703c3..ccb1f77 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ # -fsanitize=address NAME=webserv diff --git a/headers/Types.hpp b/headers/Types.hpp index b7304cc..5634a55 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -25,7 +25,6 @@ # include # include // For getaddrinfo - # define FIRST_INDEX 0 # define FT_LIMIT_BODY_SIZE 80000 diff --git a/req.rest b/req.rest index bf6f656..53bbb6e 100644 --- a/req.rest +++ b/req.rest @@ -1,7 +1,7 @@ GET http://127.0.0.1:8080 HTTP/1.1 Connection: "keep-alive" -### +### GET http://localhost:8080/test.py HTTP/1.1 Content-Type: "text/html" diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 9773c6c..cd9b424 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/15 11:34:11 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 13:11:18 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,24 +14,14 @@ #include "../../headers/ResponseUtils.hpp" #include "../../headers/ClientData.hpp" #include "../../headers/header.hpp" +#include #include -Response::Response(void) {} - Response::~Response(void) { if (fd != -1) close(fd); } -Response::Response(const Response& obj) { - *this = obj; -} - -Response& Response::operator=(const Response& obj) { - (void) obj; - return (*this); -} - int Response::getFd() const { return fd; } @@ -68,7 +58,6 @@ std::string Response::combineResponse(void) { Response::Response(struct ClientData &client, Request &req) { cgi = new Cgi(); std::string full_path = client.server->getRootPath() + req.getPath(); - std::cout << COL_GREEN << "Full path: " << full_path << END_COL << std::endl; http_version = req.getVersion(); headers["Server"] = "NorthServ/1.0"; @@ -162,7 +151,6 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (isFile) { if (!index.empty()) path += index; - std::cout << COL_MAGENTA << "Path: " << path << END_COL << std::endl; if (!path.substr(path.find_last_of('.')).compare(".py") || !path.substr(path.find_last_of('.')).compare(".php")) { body = cgi->executeCgiScript(req, serverEnv); @@ -176,7 +164,6 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p return ; } headers["Content-Length"] = fileStat.st_size; - std::cout << COL_BLUE << "Content Length is: " << fileStat.st_size << END_COL << std::endl; } } wServ->enablePOLLOUT(client.fd); diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index b1e490f..0a2aebe 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,12 +6,14 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/15 11:31:09 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 13:12:06 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/ResponseUtils.hpp" +#include #include +#include std::string ResponseUtils::getDateTime() { time_t rawtime; @@ -70,14 +72,17 @@ std::string ResponseUtils::isIndexFileExist(std::map &indexes std::map::iterator it; dir = opendir(path.c_str()); + if (!dir) { + std::cout << COL_MAGENTA << "Can't open directory in 'isIndexFileExist'" << END_COL << std::endl; + return ""; + } while ((ent = readdir(dir))) { if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) continue ; - std::cout << "Inside find index loop" << std::endl; if ((it = indexes.find(ent->d_name)) != indexes.end()) - return it->first; + return closedir(dir), it->first; } - return ""; + return closedir(dir), ""; } std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { @@ -125,6 +130,8 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { body << "" << filepath << "
"; dir = opendir(filepath.c_str()); + if (!dir) + return ""; while ((ent = readdir(dir))) { if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) continue ; @@ -136,6 +143,7 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { << std::endl; first = false; } + closedir(dir); if (first) body << "

This directory is empty

"; body << ""; @@ -156,7 +164,7 @@ bool ResponseUtils::deleteFolder(const std::string& path) DIR* dir = opendir(path.c_str()); if (!dir) { - std::cerr << "Error opening directory: " << path << std::endl; + std::cout << COL_MAGENTA << "Can't open directory in 'deleteFolder'" << END_COL << std::endl; return false; } struct dirent* entry; diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index fe0bf98..e9160ec 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/15 11:00:32 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 13:13:32 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -102,15 +102,13 @@ bool Webserv::isServerSocket(int fd) const void Webserv::acceptNewConnection(int fd) { - std::cout << "(" << fd << ")"<< " accepting new connection..." << std::endl; ClientData newClient; try { Server *srv = this->getServerByFd(fd); - std::cout << "server port: " << srv->getPort() << "Server name: " << srv->getserverName() << std::endl; struct sockaddr_in clientAddress; socklen_t clientAddressSize = sizeof(clientAddress); int clientFd = accept(fd, (struct sockaddr *)&clientAddress, &clientAddressSize); - std::cout << "client fd: " << clientFd << std::endl; //! remove this + std::cout << COL_GREEN << "New client, fd: " << clientFd << END_COL << std::endl; //! remove this if (clientFd < 0) //? Should really exit here? throw std::runtime_error("Error while accepting new connection"); Server::setNonBlocking(clientFd); @@ -127,7 +125,6 @@ void Webserv::handleClientRequest(int fd) { char buffer[READ_SIZE]; ssize_t bytesRead = recv(fd, buffer, READ_SIZE - 1, 0); - std::cout << COL_BLUE << "Bytes read: " << bytesRead << END_COL << std::endl; if (bytesRead < 0) { if (bytesRead == 0) { std::cout << "Client disconnected" << std::endl; @@ -146,14 +143,12 @@ void Webserv::handleClientRequest(int fd) std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; } if (this->_isRequestComplete(it->second)) { - printWarning("Request Ready......................>>>>"); this->prepareClientResponse(it->second); } } void Webserv::prepareClientResponse(ClientData& client) { - std::cout << COL_BLUE << "Preparing response for client... the progress is: " << (client.progress == COLLECTED ? "Collected" : "Unkown") << END_COL << std::endl; Request req(client.headers.append(client.request)); if (!client.resp) client.resp = new Response(client, req); //! free this @@ -164,7 +159,6 @@ void Webserv::prepareClientResponse(ClientData& client) void Webserv::sendResponse(int fd) //?! Complete the request, you have to send headers, body and file { - std::cout << COL_GREEN << "=========================.." << END_COL << std::endl; mapIt it = this->_requests.find(fd); if (it == this->_requests.end()) { return; @@ -172,7 +166,6 @@ void Webserv::sendResponse(int fd) //?! Complete the request, you have to send h if (it->second.progress == READY) { this->handleRequest(it->second); } - std::cout << " ************>>>>>>>>>>>>>>>>>> Sending response to client..." << std::endl; } void Webserv::timeoutHandler(void) diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 3223bad..a07f01a 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,13 +6,13 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/15 11:21:25 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 13:16:19 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/header.hpp" #include "../../headers/HttpErrors.hpp" -#include + WebservHandler::WebservHandler() { @@ -25,7 +25,6 @@ WebservHandler::~WebservHandler() { void WebservHandler::_closeClient(int fd) { std::cout << COL_YELLOW << "Closing client fd: " << fd << END_COL << std::endl; - // remove from pollfds for (size_t i = 0; i < _pollfds.size(); ++i) { if (_pollfds[i].fd == fd) { close(fd); @@ -51,7 +50,6 @@ void WebservHandler::setRequestType(ClientData& client) client.type = CHUNKED; else client.type = NO_CONTENT; - std::cout << COL_BLUE << "=> Request Type: " << client.type << END_COL << std::endl; } void WebservHandler::setContentLength(ClientData& client) @@ -65,7 +63,6 @@ void WebservHandler::setContentLength(ClientData& client) size_t vEnd = client.headers.find("\r\n", vStart); std::string value = client.headers.substr(vStart, vEnd - vStart); client.contentLen = std::atoi(value.c_str()); - std::cout << "=> Content-Length: " << client.contentLen << std::endl; } bool WebservHandler::isHeaderComplete(ClientData& client) @@ -98,7 +95,6 @@ bool WebservHandler::isRequestComplete(ClientData& client) else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { client.isRequestComplete = true; - std::cout << COL_RED << "Multipart form data complete" << END_COL << std::endl; return ((client.progress = COLLECTED), true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) @@ -117,7 +113,6 @@ bool WebservHandler::isRequestValid(ClientData& client) std::cout << COL_RED << "Request body size exceeds server limit" << END_COL << std::endl; return (false); } - std::cout << COL_GREEN << "------------------ >> (Request Valid....) << ----------------" << END_COL << std::endl; return (true); } @@ -125,7 +120,6 @@ void WebservHandler::setBoundary(ClientData& client) { if (!client.isHeaderComplete || client.type != MULTIPART_FORM || !client.boundary.empty()) return; - std::cout << COL_MAGENTA << "setBoundary...." << END_COL << std::endl; size_t pos = client.headers.find("boundary="); if (pos == std::string::npos) return; @@ -134,7 +128,6 @@ void WebservHandler::setBoundary(ClientData& client) if (end == std::string::npos) return; client.boundary = client.headers.substr(start, end - start); - std::cout << "*>> Boundary: " << client.boundary << std::endl; } void WebservHandler::setMethod(ClientData& client) @@ -157,28 +150,15 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.resp) return this->_closeClient(client.fd); std::string res = client.resp->combineResponse(); - std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; - std::cout << COL_MAGENTA << "FD: " << client.resp->getFd() << COL_MAGENTA << std::endl; - std::cout << COL_GREEN << "=== * * * * * * ======================.." << END_COL << std::endl; - std::cout << "=======>\n" << res << "\n<=======" << std::endl; - - char buffer[1024]; - - std::cout << COL_BLUE << "Start reading" << END_COL << std::endl; - read(client.resp->getFd(), buffer, sizeof(buffer)); - std::cout << buffer << std::endl; - std::cout << COL_BLUE << "End Reading" << END_COL << std::endl; send(client.fd, res.c_str(), res.size(), 0); this->_closeClient(client.fd); // first should be the send everything - std::cout << COL_GREEN << "======+++ ++++ ++++ +++==========.." << END_COL << std::endl; } void WebservHandler::validateRequestHeaders(ClientData& client) { if (!client.isHeaderComplete) return; - printWarning("validate Request Headers...."); this->validateUrl(client); if (client.type == CHUNKED) return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); From a550149901436e1411d4814ddbc8a5f32557ceef Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Thu, 15 May 2025 14:08:11 +0100 Subject: [PATCH 36/66] add contentLength, and clear leaks --- Makefile | 2 +- headers/Response.hpp | 7 +++++-- req.rest | 2 +- srcs/models/Response.cpp | 11 +++++++++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index ccb1f77..e0703c3 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ # -fsanitize=address +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address NAME=webserv diff --git a/headers/Response.hpp b/headers/Response.hpp index 514831e..bc7c947 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/15 09:45:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 14:01:57 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,6 +15,7 @@ # include "Types.hpp" #include "MimeTypes.hpp" #include "Cgi.hpp" +#include class Response : public MimeTypes { @@ -30,6 +31,7 @@ class Response : public MimeTypes std::map headers; std::string body; std::string date; + size_t contentLength; void handleGet(struct ClientData &client, Request &req, std::string &path); void handlePost(struct ClientData &client, Request &req, std::string &path); @@ -46,4 +48,5 @@ class Response : public MimeTypes std::string getBody() const; std::map getHeaders() const; std::string getHeadersString() const; + size_t getContentlength() const; }; diff --git a/req.rest b/req.rest index 53bbb6e..2a09863 100644 --- a/req.rest +++ b/req.rest @@ -1,4 +1,4 @@ -GET http://127.0.0.1:8080 HTTP/1.1 +GET http://127.0.0.1:8080/file.txt HTTP/1.1 Connection: "keep-alive" ### diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index cd9b424..d2a6b7b 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/15 13:11:18 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 14:03:29 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,12 +14,15 @@ #include "../../headers/ResponseUtils.hpp" #include "../../headers/ClientData.hpp" #include "../../headers/header.hpp" +#include #include #include Response::~Response(void) { if (fd != -1) close(fd); + delete cgi; + cgi = NULL; } int Response::getFd() const { @@ -43,6 +46,9 @@ std::string Response::getHeadersString() const { return res.str(); } +size_t Response::getContentlength() const { + return contentLength; +} std::string Response::combineResponse(void) { std::ostringstream res; @@ -163,7 +169,8 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p status_code = INTERNAL_SERVER_ERROR; return ; } - headers["Content-Length"] = fileStat.st_size; + contentLength = fileStat.st_size; + headers["Content-Length"] = contentLength; } } wServ->enablePOLLOUT(client.fd); From c747501ffea518342d5e0e0fbb34eaa435b9f0fa Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Thu, 15 May 2025 16:45:32 +0100 Subject: [PATCH 37/66] start working on send resp --- .gitignore | 2 + headers/Types.hpp | 2 + headers/WebservHandler.hpp | 3 +- learning/request.cpp | 12 ++ srcs/models/Response.cpp | 12 +- srcs/models/WebservHandler.cpp | 13 +- var/www/html/index.html | 213 ++++++++++++++++++++++++++++++++- website01/index.html | 17 --- website01/script.js | 7 -- website01/style.css | 10 -- 10 files changed, 240 insertions(+), 51 deletions(-) delete mode 100644 website01/index.html delete mode 100644 website01/script.js delete mode 100644 website01/style.css diff --git a/.gitignore b/.gitignore index 8c398cb..e6798ab 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,8 @@ ts.txt *.o *.obj *.p +*.mp4 +# websites/main/video01.mp4 ./configs/php/app configs/php/app # Precompiled Headers diff --git a/headers/Types.hpp b/headers/Types.hpp index 5634a55..b727044 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -27,6 +27,8 @@ # define FIRST_INDEX 0 +# define SEND_SIZE 1024 + # define FT_LIMIT_BODY_SIZE 80000 # define FT_PORT 8080 diff --git a/headers/WebservHandler.hpp b/headers/WebservHandler.hpp index 57b26d1..028a054 100644 --- a/headers/WebservHandler.hpp +++ b/headers/WebservHandler.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:37:19 by ochouati #+# #+# */ -/* Updated: 2025/05/14 12:24:03 by ochouati ### ########.fr */ +/* Updated: 2025/05/15 15:19:08 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -19,6 +19,7 @@ class WebservHandler { protected: + char *_buffer; bool isRequestValid(ClientData& client); bool isHeaderComplete(ClientData& client); bool isRequestComplete(ClientData& client); diff --git a/learning/request.cpp b/learning/request.cpp index 169a43c..4e9adf8 100644 --- a/learning/request.cpp +++ b/learning/request.cpp @@ -1,3 +1,15 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* request.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/05/15 16:39:40 by ochouati #+# #+# */ +/* Updated: 2025/05/15 16:39:41 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + #include "request.hpp" // GET /favicon.ico HTTP/1.1 diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d2a6b7b..f3dc0a7 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/15 14:03:29 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 16:44:15 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -69,6 +69,7 @@ Response::Response(struct ClientData &client, Request &req) { headers["Server"] = "NorthServ/1.0"; headers["Content-Type"] = "text/html"; headers["Connection"] = "keep-alive"; + headers["Content-Length"] = "0"; headers["Date"] = ResponseUtils::getDateTime(); fd = -1; @@ -121,10 +122,7 @@ Response::Response(struct ClientData &client, Request &req) { default: status_code = OK; status_text = "OK"; - if (body.empty()) { - body = "

All is good

"; - headers["Content-Length"] = ResponseUtils::toString(body.length()); - } + headers["Content-Type"] = MimeTypes::getMimeType(full_path); status_code = OK; } } @@ -170,7 +168,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p return ; } contentLength = fileStat.st_size; - headers["Content-Length"] = contentLength; + headers["Content-Length"] = FtPars::toString(contentLength); } } wServ->enablePOLLOUT(client.fd); diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index a07f01a..18563da 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* WebservHandler.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/15 13:16:19 by mboujama ### ########.fr */ +/* Updated: 2025/05/15 15:21:16 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -16,10 +16,13 @@ WebservHandler::WebservHandler() { + _buffer = new char[SEND_SIZE]; wServ = this; } WebservHandler::~WebservHandler() { + if (_buffer) + delete[] _buffer; } void WebservHandler::_closeClient(int fd) @@ -150,7 +153,11 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.resp) return this->_closeClient(client.fd); std::string res = client.resp->combineResponse(); - + // send res + // send file as chunks + + std::cout << COL_GREEN << "Headers: " << client.resp->getHeadersString() << END_COL << std::endl; + std::cout << COL_RED << "The length of the response is: " << client.resp->getContentlength() << " & fd: " << client.resp->getFd() << END_COL << std::endl; send(client.fd, res.c_str(), res.size(), 0); this->_closeClient(client.fd); // first should be the send everything } diff --git a/var/www/html/index.html b/var/www/html/index.html index 699bf6b..5b86e7f 100644 --- a/var/www/html/index.html +++ b/var/www/html/index.html @@ -1,12 +1,213 @@ - - - Webserv + + + Webserv + -
- Welcome to Webserv!
+ + +
+

Welcome to Webserv!

+
+ + + + + +
+ +
+

Random Quote

+

"Click below to get a random quote!"

+ +
+ + +
+

Random News

+

"Click below for random news articles!"

+ +
+ + +
+

User Profile

+

"Click below to generate a random user profile!"

+ +
+
+ + +
+

Webserv © 2025 | All Rights Reserved

+
+ + + - \ No newline at end of file + diff --git a/website01/index.html b/website01/index.html deleted file mode 100644 index 1af2e79..0000000 --- a/website01/index.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - Webserv | 01 - - -
-

Welcome to my webserv 01

-

Lorem ipsum dolor, sit amet consectetur adipisicing elit. Dicta quam similique, id praesentium veniam doloremque quae. Cum deserunt harum corrupti aliquid error aspernatur eligendi deleniti commodi quas, iure explicabo illo!

- -
- - - \ No newline at end of file diff --git a/website01/script.js b/website01/script.js deleted file mode 100644 index d6a7315..0000000 --- a/website01/script.js +++ /dev/null @@ -1,7 +0,0 @@ - -function changeColor() { - let h1 = document.querySelector("h1"); - h1.style.color = "green"; -} - - diff --git a/website01/style.css b/website01/style.css deleted file mode 100644 index f5d77d8..0000000 --- a/website01/style.css +++ /dev/null @@ -1,10 +0,0 @@ -h1{ - color: red; -} - -.main{ - background-color: #f4f4f4; - border: 1px solid #ccc; - border-radius: 15px; - padding: 10px; -} From 1560bcae479e2433478997af8a85ee58816d6489 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Sat, 17 May 2025 12:06:54 +0100 Subject: [PATCH 38/66] response sent successfully --- Makefile | 2 +- configs/config.conf | 7 +++-- headers/ClientData.hpp | 5 ++-- headers/Types.hpp | 2 +- srcs/models/MimeTypes.cpp | 5 ++-- srcs/models/Response.cpp | 3 +- srcs/models/Webserv.cpp | 6 ++-- srcs/models/WebservHandler.cpp | 39 +++++++++++++++++++++----- websites/main/img/medium_achakkaf.jpg | Bin 0 -> 61049 bytes websites/main/img/medium_mboujama.jpg | Bin 0 -> 60120 bytes websites/main/img/medium_ochouati.jpg | Bin 0 -> 62672 bytes websites/main/index.html | 7 ++--- 12 files changed, 52 insertions(+), 24 deletions(-) create mode 100644 websites/main/img/medium_achakkaf.jpg create mode 100644 websites/main/img/medium_mboujama.jpg create mode 100644 websites/main/img/medium_ochouati.jpg diff --git a/Makefile b/Makefile index e0703c3..ccb1f77 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ # -fsanitize=address NAME=webserv diff --git a/configs/config.conf b/configs/config.conf index 4796b35..61bc669 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,7 +5,7 @@ # required host = "127.0.0.1" # required -port = "8080,5555" +port = "8080" # required server_name = "myserver.local" # optional @@ -23,7 +23,8 @@ error_page_404 = "errors/404.html" # optional error_page_500 = "errors/500.html" -location_root = "var/www/html" +# location_root = "var/www/html" +location_root = "websites/main" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" @@ -77,7 +78,7 @@ location1_upload_enabled = "off" ############################################################################### [server.fourth] host = "0.0.0.0" -port = "4444,7070" +port = "4444" server_name = "fourth-server.local" client_max_body_size = "5242880" diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index b8e94e1..9588503 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/14 12:21:29 by ochouati ### ########.fr */ +/* Updated: 2025/05/17 08:40:44 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,6 +25,7 @@ struct ClientData { bool isRequestComplete; bool isHeaderComplete; bool isHeadersChecked; + bool isHeadersSent; Server *server; size_t bytesSent; //! Why ? size_t readed; //! why ? @@ -42,7 +43,7 @@ struct ClientData { std::map uploadFd; //! add map ClientData() : file(-1),currentFileFd(-1) ,contentLen(-1), bodyReded(-1), isRequestComplete(false), isHeaderComplete(false),isHeadersChecked(false), - server(NULL), bytesSent(0),readed(0),startTime(FtPars::getCurrentTimeMs()),resp(NULL), type(NOT_SET), progress(NOT_STARTED){} + isHeadersSent(false), server(NULL), bytesSent(0),readed(0),startTime(FtPars::getCurrentTimeMs()),resp(NULL), type(NOT_SET), progress(NOT_STARTED){} ~ClientData(); }; diff --git a/headers/Types.hpp b/headers/Types.hpp index b727044..035a2d3 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -27,7 +27,7 @@ # define FIRST_INDEX 0 -# define SEND_SIZE 1024 +# define SEND_SIZE 2048 # define FT_LIMIT_BODY_SIZE 80000 # define FT_PORT 8080 diff --git a/srcs/models/MimeTypes.cpp b/srcs/models/MimeTypes.cpp index 92757b9..8beea3a 100644 --- a/srcs/models/MimeTypes.cpp +++ b/srcs/models/MimeTypes.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* MimeTypes.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/25 16:47:27 by ochouati #+# #+# */ -/* Updated: 2025/04/23 14:42:30 by mboujama ### ########.fr */ +/* Updated: 2025/05/17 10:53:31 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -22,6 +22,7 @@ MimeTypes::MimeTypes() types[".png"] = "image/png"; types[".gif"] = "image/gif"; types[".html"] = "text/html"; + types[".txt"] = "text/plain"; types[".css"] = "text/css"; types[".js"] = "text/javascript"; types[".pdf"] = "application/pdf"; diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index f3dc0a7..8f659eb 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/15 16:44:15 by ochouati ### ########.fr */ +/* Updated: 2025/05/17 11:04:40 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -43,6 +43,7 @@ std::string Response::getHeadersString() const { std::map::const_iterator it; for (it = headers.begin(); it != headers.end(); it++) res << it->first << ": " << it->second << "\r\n"; + res << "\r\n"; return res.str(); } diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index e9160ec..a5f1ef5 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Webserv.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/15 13:13:32 by mboujama ### ########.fr */ +/* Updated: 2025/05/17 12:05:20 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -63,7 +63,7 @@ void Webserv::run() { this->handleClientRequest(_pollfds[i].fd); } if (_pollfds[i].revents & POLLOUT) { - std::cout << COL_BLUE << "Sending response to client..." << END_COL << std::endl; + // std::cout << COL_BLUE << "Sending response to client..." << END_COL << std::endl; this->sendResponse(_pollfds[i].fd); } } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 18563da..76582a4 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,12 +6,14 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/15 15:21:16 by ochouati ### ########.fr */ +/* Updated: 2025/05/17 11:41:04 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/header.hpp" #include "../../headers/HttpErrors.hpp" +#include +#include @@ -152,14 +154,37 @@ void WebservHandler::handleRequest(ClientData& client) } if (!client.resp) return this->_closeClient(client.fd); - std::string res = client.resp->combineResponse(); + if (!client.isHeadersSent) { + std::string res = client.resp->combineResponse(); + // std::string res = "HTTP/1.1 200 OK\r\nConnection: keep-alive\nContent-Length: 311\r\nContent-Type: text/plain\r\nDate: Sat, 17 May 2025 11:04:53\r\nServer: NorthServ/1.0\r\n\r\n"; + // std::cout << COL_GREEN << "Headers: " << res << END_COL << std::endl; + // std::cout << COL_RED << "The length of the response is: " << client.resp->getContentlength() << " & fd: " << client.resp->getFd() << END_COL << std::endl; + send(client.fd, res.c_str(), res.size(), 0); + client.isHeadersSent = true; + return; + } // send res // send file as chunks - - std::cout << COL_GREEN << "Headers: " << client.resp->getHeadersString() << END_COL << std::endl; - std::cout << COL_RED << "The length of the response is: " << client.resp->getContentlength() << " & fd: " << client.resp->getFd() << END_COL << std::endl; - send(client.fd, res.c_str(), res.size(), 0); - this->_closeClient(client.fd); // first should be the send everything + if ((client.bytesSent < client.resp->getContentlength()) && (client.resp->getFd() != -1)) { + // std::cout << COL_RED << " ==== ==== === === === === ==== === === " << END_COL << std::endl; + char s__buffer[SEND_SIZE]; + int n = read(client.resp->getFd(), s__buffer, SEND_SIZE - 1); + // std::cout << COL_RED << " ==== ==== === === (N: " << n << ") === === ==== === === " << END_COL << std::endl; + if (n <= 0) { + return this->_closeClient(client.fd); + } + s__buffer[n] = '\0'; + // std::cout << COL_YELLOW << "Buffer: \n\n" << s__buffer << END_COL << std::endl; + int j = send(client.fd, s__buffer, n, 0); + // std::cout << COL_RED << " ==== ==== === === (J: " << j << ") === === ==== === === " << END_COL << std::endl; + if (j <= 0 || j != n) { + return this->_closeClient(client.fd); + } + client.bytesSent += j; + } else { + std::cout << COL_MAGENTA << "The response is sent completely: " << client.bytesSent << END_COL << std::endl; + this->_closeClient(client.fd); // first should be the send everything + } } void WebservHandler::validateRequestHeaders(ClientData& client) diff --git a/websites/main/img/medium_achakkaf.jpg b/websites/main/img/medium_achakkaf.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fa6f50286bbc5b90a83188483ca016286a290e8f GIT binary patch literal 61049 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 F|Jh2G=EDF0 literal 0 HcmV?d00001 diff --git a/websites/main/img/medium_mboujama.jpg b/websites/main/img/medium_mboujama.jpg new file mode 100644 index 0000000000000000000000000000000000000000..da2d1ce56cc18361cca17e2bb03779f9206a8c13 GIT binary patch literal 60120 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 nswZH1Keb3%n4Wv%oKZ2(LC8|H7Yd3=M6f)u Project Team

- Otmane Chouati + Otmane Chouati

Otmane Chouati

Backend Developer

@@ -98,7 +98,7 @@

Otmane Chouati

- Abdelaziz Chakkaf + Abdelaziz Chakkaf

Abdelaziz Chakkaf

Network Specialist

@@ -111,7 +111,7 @@

Abdelaziz Chakkaf

- Moad Boujamaa + Moad Boujamaa

Moad Boujamaa

System Engineer

@@ -197,7 +197,6 @@

Delete Files or Folders

Examples:

/home/user/documents/file.txt - C:\\Users\\username\\Documents\\folder
From 8795cdca1b073a05ae8db0a67b599ff8413027a8 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Sun, 18 May 2025 12:53:49 +0100 Subject: [PATCH 39/66] improvements added --- .gitignore | 3 +++ configs/config.conf | 4 ++-- headers/Types.hpp | 4 ++-- srcs/models/Server.cpp | 10 ++++++++-- srcs/models/Webserv.cpp | 14 +++++++++----- srcs/models/WebservHandler.cpp | 11 +++++------ websites/main/img/favicon.ico | Bin 0 -> 15406 bytes websites/main/index.html | 7 +++++-- websites/main/scripts/particles.min.js | 8 ++++++++ 9 files changed, 42 insertions(+), 19 deletions(-) create mode 100644 websites/main/img/favicon.ico create mode 100644 websites/main/scripts/particles.min.js diff --git a/.gitignore b/.gitignore index e6798ab..36ce8f1 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,9 @@ configs/php/app labs/app mmm/ *.log +ts.html +otm.cpp +*.otm # Compiled Dynamic libraries *.so *.dylib diff --git a/configs/config.conf b/configs/config.conf index 61bc669..83848f2 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -46,9 +46,9 @@ error_page_403 = "errors/403.html" # Route (for path "/static") location1_path = "static" -location1_root = "var/www/static" +location_root = "var/www/html" allowed_methods = "GET" -autoindex = "on" +autoindex = "off" ############################################################################### diff --git a/headers/Types.hpp b/headers/Types.hpp index 035a2d3..c5e5117 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -45,13 +45,13 @@ #define SO_NOSIGPIPE 0x1022 #endif -#define LISTEN_BACKLOG 12 //! should we increase this ? +#define LISTEN_BACKLOG 256 //! should we increase this ? #define DEFAULT_ROOT_PATH "./website" #define BODY_TEMP_PATH "./tmp/path" # define RUNNING 1 -# define POLL_TIMEOUT 0 +# define POLL_TIMEOUT 50 # define END_OF_HEADERS "\r\n\r\n" # define READ_SIZE 4096 # define URL_MAX_SIZE 2048 diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 611149b..656229f 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -254,6 +254,7 @@ void Server::initServer(void) this->ftBind(); this->ftListen(); this->setNonBlocking(this->serverSocket); + std::cout << "Path: " << this->rootPath << std::endl; } void Server::ftSocket(void) @@ -268,8 +269,13 @@ void Server::setSocketOptions(void) int opt = 1; if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0) throw std::runtime_error("Set socket options REUSEADDR failed"); + #ifdef __APPLE__ if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) - throw std::runtime_error("Set socket options REUSEADDR failed"); + throw std::runtime_error("Set socket options SO_NOSIGPIPE failed"); + #endif + #ifdef __linux__ + signal(SIGPIPE, SIG_IGN); + #endif } @@ -293,7 +299,7 @@ void Server::ftListen(void) throw std::runtime_error("Listen failed"); } -void Server::setNonBlocking(int fd) //! Duplicate code in Webserv.cpp +void Server::setNonBlocking(int fd) { if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) throw std::runtime_error("Set non blocking failed"); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index a5f1ef5..c117717 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,12 +6,13 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/17 12:05:20 by ochouati ### ########.fr */ +/* Updated: 2025/05/18 11:53:53 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Webserv.hpp" #include "../../headers/header.hpp" +#include Webserv::Webserv() { @@ -47,11 +48,13 @@ void Webserv::_init() { void Webserv::run() { this->_init(); while (RUNNING) { - if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), 0)) < 0) continue; + if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), POLL_TIMEOUT)) < 0) continue; for (size_t i = 0; i < _pollfds.size() && this->_nbrEvents > 0; ++i) { if (_pollfds[i].revents & (POLLERR | POLLHUP)) { - if (!isServerSocket(_pollfds[i].fd)) + if (!isServerSocket(_pollfds[i].fd)) { + std::cerr << COL_RED << "Error in Socket (POLLERR | POLLHUP): " << _pollfds[i].fd << END_COL << std::endl; this->_closeClient(_pollfds[i].fd); + } --this->_nbrEvents; continue; } @@ -108,7 +111,7 @@ void Webserv::acceptNewConnection(int fd) struct sockaddr_in clientAddress; socklen_t clientAddressSize = sizeof(clientAddress); int clientFd = accept(fd, (struct sockaddr *)&clientAddress, &clientAddressSize); - std::cout << COL_GREEN << "New client, fd: " << clientFd << END_COL << std::endl; //! remove this + // std::cout << COL_GREEN << "New client, fd: " << clientFd << END_COL << std::endl; //! remove this if (clientFd < 0) //? Should really exit here? throw std::runtime_error("Error while accepting new connection"); Server::setNonBlocking(clientFd); @@ -131,6 +134,7 @@ void Webserv::handleClientRequest(int fd) } else { std::cerr << COL_RED << "Error while reading from client" << END_COL << std::endl; } + std::cout << COL_RED << "Error while reading from client: " << fd << END_COL << std::endl; this->_closeClient(fd); return; } @@ -140,7 +144,7 @@ void Webserv::handleClientRequest(int fd) if (it == this->_requests.end()) return; if (it->second.bodyReded != -1) { it->second.bodyReded += bytesRead; - std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; + // std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; } if (this->_isRequestComplete(it->second)) { this->prepareClientResponse(it->second); diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 76582a4..abb018d 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/17 11:41:04 by ochouati ### ########.fr */ +/* Updated: 2025/05/17 13:58:51 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -29,7 +29,7 @@ WebservHandler::~WebservHandler() { void WebservHandler::_closeClient(int fd) { - std::cout << COL_YELLOW << "Closing client fd: " << fd << END_COL << std::endl; + // std::cout << COL_YELLOW << "Closing client fd: " << fd << END_COL << std::endl; for (size_t i = 0; i < _pollfds.size(); ++i) { if (_pollfds[i].fd == fd) { close(fd); @@ -156,9 +156,6 @@ void WebservHandler::handleRequest(ClientData& client) return this->_closeClient(client.fd); if (!client.isHeadersSent) { std::string res = client.resp->combineResponse(); - // std::string res = "HTTP/1.1 200 OK\r\nConnection: keep-alive\nContent-Length: 311\r\nContent-Type: text/plain\r\nDate: Sat, 17 May 2025 11:04:53\r\nServer: NorthServ/1.0\r\n\r\n"; - // std::cout << COL_GREEN << "Headers: " << res << END_COL << std::endl; - // std::cout << COL_RED << "The length of the response is: " << client.resp->getContentlength() << " & fd: " << client.resp->getFd() << END_COL << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; @@ -171,6 +168,7 @@ void WebservHandler::handleRequest(ClientData& client) int n = read(client.resp->getFd(), s__buffer, SEND_SIZE - 1); // std::cout << COL_RED << " ==== ==== === === (N: " << n << ") === === ==== === === " << END_COL << std::endl; if (n <= 0) { + std::cout << COL_RED << "Error while reading from file, for client/N: " << client.fd << " -- " << n << END_COL << std::endl; return this->_closeClient(client.fd); } s__buffer[n] = '\0'; @@ -178,11 +176,12 @@ void WebservHandler::handleRequest(ClientData& client) int j = send(client.fd, s__buffer, n, 0); // std::cout << COL_RED << " ==== ==== === === (J: " << j << ") === === ==== === === " << END_COL << std::endl; if (j <= 0 || j != n) { + std::cout << COL_RED << "Error while sending socket, for client/N: " << client.fd << " -- " << j << END_COL << std::endl; return this->_closeClient(client.fd); } client.bytesSent += j; } else { - std::cout << COL_MAGENTA << "The response is sent completely: " << client.bytesSent << END_COL << std::endl; + // std::cout << COL_MAGENTA << "The response is sent completely: " << client.bytesSent << END_COL << std::endl; this->_closeClient(client.fd); // first should be the send everything } } diff --git a/websites/main/img/favicon.ico b/websites/main/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..9103881869d058a09a3fd2c047bbd7f1a7d68fa4 GIT binary patch literal 15406 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 +
- + \ No newline at end of file diff --git a/websites/main/scripts/particles.min.js b/websites/main/scripts/particles.min.js new file mode 100644 index 0000000..233a900 --- /dev/null +++ b/websites/main/scripts/particles.min.js @@ -0,0 +1,8 @@ +/** + * Minified by jsDelivr using Terser v5.37.0. + * Original file: /npm/particles.js@2.0.0/particles.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +var pJS=function(e,a){var t=document.querySelector("#"+e+" > .particles-js-canvas-el");this.pJS={canvas:{el:t,w:t.offsetWidth,h:t.offsetHeight},particles:{number:{value:400,density:{enable:!0,value_area:800}},color:{value:"#fff"},shape:{type:"circle",stroke:{width:0,color:"#ff0000"},polygon:{nb_sides:5},image:{src:"",width:100,height:100}},opacity:{value:1,random:!1,anim:{enable:!1,speed:2,opacity_min:0,sync:!1}},size:{value:20,random:!1,anim:{enable:!1,speed:20,size_min:0,sync:!1}},line_linked:{enable:!0,distance:100,color:"#fff",opacity:1,width:1},move:{enable:!0,speed:2,direction:"none",random:!1,straight:!1,out_mode:"out",bounce:!1,attract:{enable:!1,rotateX:3e3,rotateY:3e3}},array:[]},interactivity:{detect_on:"canvas",events:{onhover:{enable:!0,mode:"grab"},onclick:{enable:!0,mode:"push"},resize:!0},modes:{grab:{distance:100,line_linked:{opacity:1}},bubble:{distance:200,size:80,duration:.4},repulse:{distance:200,duration:.4},push:{particles_nb:4},remove:{particles_nb:2}},mouse:{}},retina_detect:!1,fn:{interact:{},modes:{},vendors:{}},tmp:{}};var i=this.pJS;a&&Object.deepExtend(i,a),i.tmp.obj={size_value:i.particles.size.value,size_anim_speed:i.particles.size.anim.speed,move_speed:i.particles.move.speed,line_linked_distance:i.particles.line_linked.distance,line_linked_width:i.particles.line_linked.width,mode_grab_distance:i.interactivity.modes.grab.distance,mode_bubble_distance:i.interactivity.modes.bubble.distance,mode_bubble_size:i.interactivity.modes.bubble.size,mode_repulse_distance:i.interactivity.modes.repulse.distance},i.fn.retinaInit=function(){i.retina_detect&&window.devicePixelRatio>1?(i.canvas.pxratio=window.devicePixelRatio,i.tmp.retina=!0):(i.canvas.pxratio=1,i.tmp.retina=!1),i.canvas.w=i.canvas.el.offsetWidth*i.canvas.pxratio,i.canvas.h=i.canvas.el.offsetHeight*i.canvas.pxratio,i.particles.size.value=i.tmp.obj.size_value*i.canvas.pxratio,i.particles.size.anim.speed=i.tmp.obj.size_anim_speed*i.canvas.pxratio,i.particles.move.speed=i.tmp.obj.move_speed*i.canvas.pxratio,i.particles.line_linked.distance=i.tmp.obj.line_linked_distance*i.canvas.pxratio,i.interactivity.modes.grab.distance=i.tmp.obj.mode_grab_distance*i.canvas.pxratio,i.interactivity.modes.bubble.distance=i.tmp.obj.mode_bubble_distance*i.canvas.pxratio,i.particles.line_linked.width=i.tmp.obj.line_linked_width*i.canvas.pxratio,i.interactivity.modes.bubble.size=i.tmp.obj.mode_bubble_size*i.canvas.pxratio,i.interactivity.modes.repulse.distance=i.tmp.obj.mode_repulse_distance*i.canvas.pxratio},i.fn.canvasInit=function(){i.canvas.ctx=i.canvas.el.getContext("2d")},i.fn.canvasSize=function(){i.canvas.el.width=i.canvas.w,i.canvas.el.height=i.canvas.h,i&&i.interactivity.events.resize&&window.addEventListener("resize",(function(){i.canvas.w=i.canvas.el.offsetWidth,i.canvas.h=i.canvas.el.offsetHeight,i.tmp.retina&&(i.canvas.w*=i.canvas.pxratio,i.canvas.h*=i.canvas.pxratio),i.canvas.el.width=i.canvas.w,i.canvas.el.height=i.canvas.h,i.particles.move.enable||(i.fn.particlesEmpty(),i.fn.particlesCreate(),i.fn.particlesDraw(),i.fn.vendors.densityAutoParticles()),i.fn.vendors.densityAutoParticles()}))},i.fn.canvasPaint=function(){i.canvas.ctx.fillRect(0,0,i.canvas.w,i.canvas.h)},i.fn.canvasClear=function(){i.canvas.ctx.clearRect(0,0,i.canvas.w,i.canvas.h)},i.fn.particle=function(e,a,t){if(this.radius=(i.particles.size.random?Math.random():1)*i.particles.size.value,i.particles.size.anim.enable&&(this.size_status=!1,this.vs=i.particles.size.anim.speed/100,i.particles.size.anim.sync||(this.vs=this.vs*Math.random())),this.x=t?t.x:Math.random()*i.canvas.w,this.y=t?t.y:Math.random()*i.canvas.h,this.x>i.canvas.w-2*this.radius?this.x=this.x-this.radius:this.x<2*this.radius&&(this.x=this.x+this.radius),this.y>i.canvas.h-2*this.radius?this.y=this.y-this.radius:this.y<2*this.radius&&(this.y=this.y+this.radius),i.particles.move.bounce&&i.fn.vendors.checkOverlap(this,t),this.color={},"object"==typeof e.value)if(e.value instanceof Array){var n=e.value[Math.floor(Math.random()*i.particles.color.value.length)];this.color.rgb=hexToRgb(n)}else null!=e.value.r&&null!=e.value.g&&null!=e.value.b&&(this.color.rgb={r:e.value.r,g:e.value.g,b:e.value.b}),null!=e.value.h&&null!=e.value.s&&null!=e.value.l&&(this.color.hsl={h:e.value.h,s:e.value.s,l:e.value.l});else"random"==e.value?this.color.rgb={r:Math.floor(256*Math.random())+0,g:Math.floor(256*Math.random())+0,b:Math.floor(256*Math.random())+0}:"string"==typeof e.value&&(this.color=e,this.color.rgb=hexToRgb(this.color.value));this.opacity=(i.particles.opacity.random?Math.random():1)*i.particles.opacity.value,i.particles.opacity.anim.enable&&(this.opacity_status=!1,this.vo=i.particles.opacity.anim.speed/100,i.particles.opacity.anim.sync||(this.vo=this.vo*Math.random()));var s={};switch(i.particles.move.direction){case"top":s={x:0,y:-1};break;case"top-right":s={x:.5,y:-.5};break;case"right":s={x:1,y:-0};break;case"bottom-right":s={x:.5,y:.5};break;case"bottom":s={x:0,y:1};break;case"bottom-left":s={x:-.5,y:1};break;case"left":s={x:-1,y:0};break;case"top-left":s={x:-.5,y:-.5};break;default:s={x:0,y:0}}i.particles.move.straight?(this.vx=s.x,this.vy=s.y,i.particles.move.random&&(this.vx=this.vx*Math.random(),this.vy=this.vy*Math.random())):(this.vx=s.x+Math.random()-.5,this.vy=s.y+Math.random()-.5),this.vx_i=this.vx,this.vy_i=this.vy;var r=i.particles.shape.type;if("object"==typeof r){if(r instanceof Array){var c=r[Math.floor(Math.random()*r.length)];this.shape=c}}else this.shape=r;if("image"==this.shape){var o=i.particles.shape;this.img={src:o.image.src,ratio:o.image.width/o.image.height},this.img.ratio||(this.img.ratio=1),"svg"==i.tmp.img_type&&null!=i.tmp.source_svg&&(i.fn.vendors.createSvgImg(this),i.tmp.pushing&&(this.img.loaded=!1))}},i.fn.particle.prototype.draw=function(){var e=this;if(null!=e.radius_bubble)var a=e.radius_bubble;else a=e.radius;if(null!=e.opacity_bubble)var t=e.opacity_bubble;else t=e.opacity;if(e.color.rgb)var n="rgba("+e.color.rgb.r+","+e.color.rgb.g+","+e.color.rgb.b+","+t+")";else n="hsla("+e.color.hsl.h+","+e.color.hsl.s+"%,"+e.color.hsl.l+"%,"+t+")";switch(i.canvas.ctx.fillStyle=n,i.canvas.ctx.beginPath(),e.shape){case"circle":i.canvas.ctx.arc(e.x,e.y,a,0,2*Math.PI,!1);break;case"edge":i.canvas.ctx.rect(e.x-a,e.y-a,2*a,2*a);break;case"triangle":i.fn.vendors.drawShape(i.canvas.ctx,e.x-a,e.y+a/1.66,2*a,3,2);break;case"polygon":i.fn.vendors.drawShape(i.canvas.ctx,e.x-a/(i.particles.shape.polygon.nb_sides/3.5),e.y-a/.76,2.66*a/(i.particles.shape.polygon.nb_sides/3),i.particles.shape.polygon.nb_sides,1);break;case"star":i.fn.vendors.drawShape(i.canvas.ctx,e.x-2*a/(i.particles.shape.polygon.nb_sides/4),e.y-a/1.52,2*a*2.66/(i.particles.shape.polygon.nb_sides/3),i.particles.shape.polygon.nb_sides,2);break;case"image":if("svg"==i.tmp.img_type)var s=e.img.obj;else s=i.tmp.img_obj;s&&i.canvas.ctx.drawImage(s,e.x-a,e.y-a,2*a,2*a/e.img.ratio)}i.canvas.ctx.closePath(),i.particles.shape.stroke.width>0&&(i.canvas.ctx.strokeStyle=i.particles.shape.stroke.color,i.canvas.ctx.lineWidth=i.particles.shape.stroke.width,i.canvas.ctx.stroke()),i.canvas.ctx.fill()},i.fn.particlesCreate=function(){for(var e=0;e=i.particles.opacity.value&&(a.opacity_status=!1),a.opacity+=a.vo):(a.opacity<=i.particles.opacity.anim.opacity_min&&(a.opacity_status=!0),a.opacity-=a.vo),a.opacity<0&&(a.opacity=0)),i.particles.size.anim.enable&&(1==a.size_status?(a.radius>=i.particles.size.value&&(a.size_status=!1),a.radius+=a.vs):(a.radius<=i.particles.size.anim.size_min&&(a.size_status=!0),a.radius-=a.vs),a.radius<0&&(a.radius=0)),"bounce"==i.particles.move.out_mode)var n={x_left:a.radius,x_right:i.canvas.w,y_top:a.radius,y_bottom:i.canvas.h};else n={x_left:-a.radius,x_right:i.canvas.w+a.radius,y_top:-a.radius,y_bottom:i.canvas.h+a.radius};if(a.x-a.radius>i.canvas.w?(a.x=n.x_left,a.y=Math.random()*i.canvas.h):a.x+a.radius<0&&(a.x=n.x_right,a.y=Math.random()*i.canvas.h),a.y-a.radius>i.canvas.h?(a.y=n.y_top,a.x=Math.random()*i.canvas.w):a.y+a.radius<0&&(a.y=n.y_bottom,a.x=Math.random()*i.canvas.w),"bounce"===i.particles.move.out_mode)(a.x+a.radius>i.canvas.w||a.x-a.radius<0)&&(a.vx=-a.vx),(a.y+a.radius>i.canvas.h||a.y-a.radius<0)&&(a.vy=-a.vy);if(isInArray("grab",i.interactivity.events.onhover.mode)&&i.fn.modes.grabParticle(a),(isInArray("bubble",i.interactivity.events.onhover.mode)||isInArray("bubble",i.interactivity.events.onclick.mode))&&i.fn.modes.bubbleParticle(a),(isInArray("repulse",i.interactivity.events.onhover.mode)||isInArray("repulse",i.interactivity.events.onclick.mode))&&i.fn.modes.repulseParticle(a),i.particles.line_linked.enable||i.particles.move.attract.enable)for(var s=e+1;s0){var c=i.particles.line_linked.color_rgb_line;i.canvas.ctx.strokeStyle="rgba("+c.r+","+c.g+","+c.b+","+r+")",i.canvas.ctx.lineWidth=i.particles.line_linked.width,i.canvas.ctx.beginPath(),i.canvas.ctx.moveTo(e.x,e.y),i.canvas.ctx.lineTo(a.x,a.y),i.canvas.ctx.stroke(),i.canvas.ctx.closePath()}}},i.fn.interact.attractParticles=function(e,a){var t=e.x-a.x,n=e.y-a.y;if(Math.sqrt(t*t+n*n)<=i.particles.line_linked.distance){var s=t/(1e3*i.particles.move.attract.rotateX),r=n/(1e3*i.particles.move.attract.rotateY);e.vx-=s,e.vy-=r,a.vx+=s,a.vy+=r}},i.fn.interact.bounceParticles=function(e,a){var t=e.x-a.x,i=e.y-a.y;Math.sqrt(t*t+i*i)<=e.radius+a.radius&&(e.vx=-e.vx,e.vy=-e.vy,a.vx=-a.vx,a.vy=-a.vy)},i.fn.modes.pushParticles=function(e,a){i.tmp.pushing=!0;for(var t=0;t=0&&"mousemove"==i.interactivity.status){if(i.interactivity.modes.bubble.size!=i.particles.size.value)if(i.interactivity.modes.bubble.size>i.particles.size.value){(c=e.radius+i.interactivity.modes.bubble.size*n)>=0&&(e.radius_bubble=c)}else{var r=e.radius-i.interactivity.modes.bubble.size,c=e.radius-r*n;e.radius_bubble=c>0?c:0}var o;if(i.interactivity.modes.bubble.opacity!=i.particles.opacity.value)if(i.interactivity.modes.bubble.opacity>i.particles.opacity.value)(o=i.interactivity.modes.bubble.opacity*n)>e.opacity&&o<=i.interactivity.modes.bubble.opacity&&(e.opacity_bubble=o);else(o=e.opacity-(i.particles.opacity.value-i.interactivity.modes.bubble.opacity)*n)=i.interactivity.modes.bubble.opacity&&(e.opacity_bubble=o)}}else s();"mouseleave"==i.interactivity.status&&s()}else if(i.interactivity.events.onclick.enable&&isInArray("bubble",i.interactivity.events.onclick.mode)){if(i.tmp.bubble_clicking){a=e.x-i.interactivity.mouse.click_pos_x,t=e.y-i.interactivity.mouse.click_pos_y;var l=Math.sqrt(a*a+t*t),v=((new Date).getTime()-i.interactivity.mouse.click_time)/1e3;v>i.interactivity.modes.bubble.duration&&(i.tmp.bubble_duration_end=!0),v>2*i.interactivity.modes.bubble.duration&&(i.tmp.bubble_clicking=!1,i.tmp.bubble_duration_end=!1)}function p(a,t,n,s,r){if(a!=t)if(i.tmp.bubble_duration_end)null!=n&&(o=a+(a-(s-v*(s-a)/i.interactivity.modes.bubble.duration)),"size"==r&&(e.radius_bubble=o),"opacity"==r&&(e.opacity_bubble=o));else if(l<=i.interactivity.modes.bubble.distance){if(null!=n)var c=n;else c=s;if(c!=a){var o=s-v*(s-a)/i.interactivity.modes.bubble.duration;"size"==r&&(e.radius_bubble=o),"opacity"==r&&(e.opacity_bubble=o)}}else"size"==r&&(e.radius_bubble=void 0),"opacity"==r&&(e.opacity_bubble=void 0)}i.tmp.bubble_clicking&&(p(i.interactivity.modes.bubble.size,i.particles.size.value,e.radius_bubble,e.radius,"size"),p(i.interactivity.modes.bubble.opacity,i.particles.opacity.value,e.opacity_bubble,e.opacity,"opacity"))}},i.fn.modes.repulseParticle=function(e){if(i.interactivity.events.onhover.enable&&isInArray("repulse",i.interactivity.events.onhover.mode)&&"mousemove"==i.interactivity.status){var a=e.x-i.interactivity.mouse.pos_x,t=e.y-i.interactivity.mouse.pos_y,n=Math.sqrt(a*a+t*t),s={x:a/n,y:t/n},r=clamp(1/(o=i.interactivity.modes.repulse.distance)*(-1*Math.pow(n/o,2)+1)*o*100,0,50),c={x:e.x+s.x*r,y:e.y+s.y*r};"bounce"==i.particles.move.out_mode?(c.x-e.radius>0&&c.x+e.radius0&&c.y+e.radiusi.canvas.w||t.x-e.radius<0)&&(e.vx=-e.vx),(t.y+e.radius>i.canvas.h||t.y-e.radius<0)&&(e.vy=-e.vy)}}()}else 0==i.tmp.repulse_clicking&&(e.vx=e.vx_i,e.vy=e.vy_i)},i.fn.modes.grabParticle=function(e){if(i.interactivity.events.onhover.enable&&"mousemove"==i.interactivity.status){var a=e.x-i.interactivity.mouse.pos_x,t=e.y-i.interactivity.mouse.pos_y,n=Math.sqrt(a*a+t*t);if(n<=i.interactivity.modes.grab.distance){var s=i.interactivity.modes.grab.line_linked.opacity-n/(1/i.interactivity.modes.grab.line_linked.opacity)/i.interactivity.modes.grab.distance;if(s>0){var r=i.particles.line_linked.color_rgb_line;i.canvas.ctx.strokeStyle="rgba("+r.r+","+r.g+","+r.b+","+s+")",i.canvas.ctx.lineWidth=i.particles.line_linked.width,i.canvas.ctx.beginPath(),i.canvas.ctx.moveTo(e.x,e.y),i.canvas.ctx.lineTo(i.interactivity.mouse.pos_x,i.interactivity.mouse.pos_y),i.canvas.ctx.stroke(),i.canvas.ctx.closePath()}}}},i.fn.vendors.eventsListeners=function(){"window"==i.interactivity.detect_on?i.interactivity.el=window:i.interactivity.el=i.canvas.el,(i.interactivity.events.onhover.enable||i.interactivity.events.onclick.enable)&&(i.interactivity.el.addEventListener("mousemove",(function(e){if(i.interactivity.el==window)var a=e.clientX,t=e.clientY;else a=e.offsetX||e.clientX,t=e.offsetY||e.clientY;i.interactivity.mouse.pos_x=a,i.interactivity.mouse.pos_y=t,i.tmp.retina&&(i.interactivity.mouse.pos_x*=i.canvas.pxratio,i.interactivity.mouse.pos_y*=i.canvas.pxratio),i.interactivity.status="mousemove"})),i.interactivity.el.addEventListener("mouseleave",(function(e){i.interactivity.mouse.pos_x=null,i.interactivity.mouse.pos_y=null,i.interactivity.status="mouseleave"}))),i.interactivity.events.onclick.enable&&i.interactivity.el.addEventListener("click",(function(){if(i.interactivity.mouse.click_pos_x=i.interactivity.mouse.pos_x,i.interactivity.mouse.click_pos_y=i.interactivity.mouse.pos_y,i.interactivity.mouse.click_time=(new Date).getTime(),i.interactivity.events.onclick.enable)switch(i.interactivity.events.onclick.mode){case"push":i.particles.move.enable||1==i.interactivity.modes.push.particles_nb?i.fn.modes.pushParticles(i.interactivity.modes.push.particles_nb,i.interactivity.mouse):i.interactivity.modes.push.particles_nb>1&&i.fn.modes.pushParticles(i.interactivity.modes.push.particles_nb);break;case"remove":i.fn.modes.removeParticles(i.interactivity.modes.remove.particles_nb);break;case"bubble":i.tmp.bubble_clicking=!0;break;case"repulse":i.tmp.repulse_clicking=!0,i.tmp.repulse_count=0,i.tmp.repulse_finish=!1,setTimeout((function(){i.tmp.repulse_clicking=!1}),1e3*i.interactivity.modes.repulse.duration)}}))},i.fn.vendors.densityAutoParticles=function(){if(i.particles.number.density.enable){var e=i.canvas.el.width*i.canvas.el.height/1e3;i.tmp.retina&&(e/=2*i.canvas.pxratio);var a=e*i.particles.number.value/i.particles.number.density.value_area,t=i.particles.array.length-a;t<0?i.fn.modes.pushParticles(Math.abs(t)):i.fn.modes.removeParticles(t)}},i.fn.vendors.checkOverlap=function(e,a){for(var t=0;t=i.particles.number.value?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):null!=i.tmp.img_obj?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame))},i.fn.vendors.checkBeforeDraw=function(){"image"==i.particles.shape.type?"svg"==i.tmp.img_type&&null==i.tmp.source_svg?i.tmp.checkAnimFrame=requestAnimFrame(check):(cancelRequestAnimFrame(i.tmp.checkAnimFrame),i.tmp.img_error||(i.fn.vendors.init(),i.fn.vendors.draw())):(i.fn.vendors.init(),i.fn.vendors.draw())},i.fn.vendors.init=function(){i.fn.retinaInit(),i.fn.canvasInit(),i.fn.canvasSize(),i.fn.canvasPaint(),i.fn.particlesCreate(),i.fn.vendors.densityAutoParticles(),i.particles.line_linked.color_rgb_line=hexToRgb(i.particles.line_linked.color)},i.fn.vendors.start=function(){isInArray("image",i.particles.shape.type)?(i.tmp.img_type=i.particles.shape.image.src.substr(i.particles.shape.image.src.length-3),i.fn.vendors.loadImg(i.tmp.img_type)):i.fn.vendors.checkBeforeDraw()},i.fn.vendors.eventsListeners(),i.fn.vendors.start()};function hexToRgb(e){e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,a,t,i){return a+a+t+t+i+i}));var a=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return a?{r:parseInt(a[1],16),g:parseInt(a[2],16),b:parseInt(a[3],16)}:null}function clamp(e,a,t){return Math.min(Math.max(e,a),t)}function isInArray(e,a){return a.indexOf(e)>-1}Object.deepExtend=function(e,a){for(var t in a)a[t]&&a[t].constructor&&a[t].constructor===Object?(e[t]=e[t]||{},arguments.callee(e[t],a[t])):e[t]=a[t];return e},window.requestAnimFrame=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)},window.cancelRequestAnimFrame=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout,window.pJSDom=[],window.particlesJS=function(e,a){"string"!=typeof e&&(a=e,e="particles-js"),e||(e="particles-js");var t=document.getElementById(e),i="particles-js-canvas-el",n=t.getElementsByClassName(i);if(n.length)for(;n.length>0;)t.removeChild(n[0]);var s=document.createElement("canvas");s.className=i,s.style.width="100%",s.style.height="100%",null!=document.getElementById(e).appendChild(s)&&pJSDom.push(new pJS(e,a))},window.particlesJS.load=function(e,a,t){var i=new XMLHttpRequest;i.open("GET",a),i.onreadystatechange=function(a){if(4==i.readyState)if(200==i.status){var n=JSON.parse(a.currentTarget.response);window.particlesJS(e,n),t&&t()}else console.log("Error pJS - XMLHttpRequest status: "+i.status),console.log("Error pJS - File config not found")},i.send()}; +//# sourceMappingURL=/sm/989ad3d344a46ad94354c16dc2512d23ddb937054ab7980adb822f74145374a7.map \ No newline at end of file From 8aef430439226da79baabdb08a16fe96f0cc0439 Mon Sep 17 00:00:00 2001 From: flutterde <71704747+flutterde@users.noreply.github.com> Date: Sun, 18 May 2025 12:00:11 +0000 Subject: [PATCH 40/66] fixed in linux --- srcs/models/Cgi.cpp | 1 + srcs/models/ResponseUtils.cpp | 4 +++- srcs/models/Server.cpp | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 586ed95..7218e1d 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -11,6 +11,7 @@ /* ************************************************************************** */ #include "../../headers/Cgi.hpp" + #include //! // SCRIPT_FILENAME – hold the executeble file path // REQUEST_METHOD – hold the method name diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index 0a2aebe..f019d0e 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -179,8 +179,10 @@ bool ResponseUtils::deleteFolder(const std::string& path) deleteFile(filePath); } closedir(dir); - if (remove(path.c_str()) != 0) + if (remove(path.c_str()) != 0) { std::cerr << "Error deleting directory: " << path << std::endl; + return (false); + } return true; } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 656229f..02157f4 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -11,6 +11,7 @@ /* ************************************************************************** */ #include "../../headers/header.hpp" +#include //! Server::Server(void)//! why ? From 0df2474c8b36df3a450c116237d1b42bb0622255 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 19 May 2025 10:19:10 +0100 Subject: [PATCH 41/66] add try/catch atWebserv::prepareClientResponse --- configs/config.conf | 2 +- srcs/models/Webserv.cpp | 13 +++++++++++-- srcs/parsing/helpers/FtPars.cpp | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/configs/config.conf b/configs/config.conf index 83848f2..b580405 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -30,7 +30,7 @@ allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" upload_store = "var/www/uploads" -cgi = "/usr/bin/php-cgi:.py,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" +cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" ############################################################################### diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index c117717..44decde 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,12 +6,13 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/18 11:53:53 by ochouati ### ########.fr */ +/* Updated: 2025/05/19 10:08:45 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Webserv.hpp" #include "../../headers/header.hpp" +#include #include @@ -153,11 +154,19 @@ void Webserv::handleClientRequest(int fd) void Webserv::prepareClientResponse(ClientData& client) { + std::cout << COL_BLUE << "Preparing Request for client..." << END_COL << std::endl; + try { + Request req(client.headers.append(client.request)); + std::cout << COL_BLUE << "2. Preparing response for client..." << END_COL << std::endl; if (!client.resp) - client.resp = new Response(client, req); //! free this + client.resp = new Response(client, req); client.progress = READY; this->enablePOLLOUT(client.fd); + } catch(std::exception& e) { + std::cerr << COL_RED << "Error while preparing response: " << e.what() << END_COL << std::endl; + this->_closeClient(client.fd); + } } diff --git a/srcs/parsing/helpers/FtPars.cpp b/srcs/parsing/helpers/FtPars.cpp index 1208ff6..1c25e43 100644 --- a/srcs/parsing/helpers/FtPars.cpp +++ b/srcs/parsing/helpers/FtPars.cpp @@ -254,7 +254,7 @@ namespace FtPars { if (getline(ss2, key, ':') && getline(ss2, val, ':')) { if (FtPars::containSpaces(key) || FtPars::containSpaces(val)) throw std::runtime_error("Error parsing server cgis"); - server.setCGI(key, val); + server.setCGI(val, key); } else throw std::runtime_error("Error parsing server cgis"); } From 17017b3434ea24cf3dd0f972a4e32f3cb4b9836a Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Mon, 19 May 2025 18:34:47 +0100 Subject: [PATCH 42/66] put all variable that cgi need in env --- Makefile | 2 +- headers/Cgi.hpp | 2 +- headers/ClientData.hpp | 3 ++- headers/Response.hpp | 1 - headers/request.hpp | 5 +++-- srcs/models/Cgi.cpp | 9 +++++---- srcs/models/Response.cpp | 2 +- srcs/models/Webserv.cpp | 5 +++-- srcs/models/WebservHandler.cpp | 1 + {learning => srcs/models}/request.cpp | 27 +++++++++++++++++++++++---- srcs/utils/ClientData.cpp | 1 + 11 files changed, 41 insertions(+), 17 deletions(-) rename {learning => srcs/models}/request.cpp (84%) diff --git a/Makefile b/Makefile index e0703c3..195f2e5 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp debug/printing.cpp \ srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp srcs/utils/ClientData.cpp \ # ACHAKKAF -SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp learning/request.cpp +SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp srcs/models/request.cpp # MOAD SRCS += srcs/models/Response.cpp srcs/models/ResponseUtils.cpp srcs/models/MimeTypes.cpp srcs/models/Cgi.cpp diff --git a/headers/Cgi.hpp b/headers/Cgi.hpp index 1cb293c..3d88034 100644 --- a/headers/Cgi.hpp +++ b/headers/Cgi.hpp @@ -10,7 +10,7 @@ /* */ /* ************************************************************************** */ -#include "request.hpp" +#include "Request.hpp" #include "Types.hpp" class Cgi { diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index b8e94e1..11e9b74 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -14,8 +14,9 @@ #include "Types.hpp" #include "Server.hpp" #include "FtPars.hpp" -#include "Response.hpp" +// #include "Response.hpp" +class Response; struct ClientData { int fd; int file; //! diff --git a/headers/Response.hpp b/headers/Response.hpp index bc7c947..d766677 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -15,7 +15,6 @@ # include "Types.hpp" #include "MimeTypes.hpp" #include "Cgi.hpp" -#include class Response : public MimeTypes { diff --git a/headers/request.hpp b/headers/request.hpp index c324bf7..6f1ebb5 100644 --- a/headers/request.hpp +++ b/headers/request.hpp @@ -1,5 +1,6 @@ #pragma once #include "Types.hpp" +#include "ClientData.hpp" class Request { private: @@ -11,9 +12,9 @@ class Request { std::vector vQuery; std::map headerPairs; std::vector vEnv; - + ClientData& client; public: - Request(const std::string& requestString); + Request(const std::string& requestString, ClientData& c); ~Request(); void setPath(std::string &newPath); diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 586ed95..64aead5 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -31,7 +31,7 @@ char **Cgi::createEnvironmentVariables(Request &request, char **systemEnv) while (systemEnv[systemEnvCount]) ++systemEnvCount; - char **envVariables = new char *[systemEnvCount + request.getEnvSize()]; // free this + char **envVariables = new char *[systemEnvCount + request.getEnvSize() + 1]; // free this size_t index = 0; while (systemEnv[index]) @@ -85,6 +85,7 @@ std::string Cgi::locateExecutable(const std::vector &searchPaths, c std::string Cgi::executeCgiScript(Request &request, char **systemEnv) { + request.convertToEnv(); char **envVariables = createEnvironmentVariables(request, systemEnv); std::vector binaryPaths = extractBinaryPaths(systemEnv); std::string scriptExtension; @@ -134,8 +135,8 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) else exit(EXIT_FAILURE); // !! waaaaaa abadelaziz - // for(size_t i = 0; envVariables[i]; ++i) - // delete envVariables[i]; - // delete[] envVariables; + for(size_t i = 0; envVariables[i]; ++i) + delete envVariables[i]; + delete[] envVariables; return file; } diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d2a6b7b..a6da846 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -12,7 +12,7 @@ #include "../../headers/Response.hpp" #include "../../headers/ResponseUtils.hpp" -#include "../../headers/ClientData.hpp" +// #include "../../headers/ClientData.hpp" #include "../../headers/header.hpp" #include #include diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index e9160ec..da52b3e 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -12,7 +12,8 @@ #include "../../headers/Webserv.hpp" #include "../../headers/header.hpp" - +#include "../../headers/Response.hpp" +#include "../../headers/Request.hpp" Webserv::Webserv() { } @@ -149,7 +150,7 @@ void Webserv::handleClientRequest(int fd) void Webserv::prepareClientResponse(ClientData& client) { - Request req(client.headers.append(client.request)); + Request req(client.headers.append(client.request), client); if (!client.resp) client.resp = new Response(client, req); //! free this client.progress = READY; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index a07f01a..f0c77d6 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -12,6 +12,7 @@ #include "../../headers/header.hpp" #include "../../headers/HttpErrors.hpp" +#include "../../headers/Response.hpp" diff --git a/learning/request.cpp b/srcs/models/request.cpp similarity index 84% rename from learning/request.cpp rename to srcs/models/request.cpp index 169a43c..005029a 100644 --- a/learning/request.cpp +++ b/srcs/models/request.cpp @@ -1,4 +1,4 @@ -#include "request.hpp" +#include "../../headers/Request.hpp" // GET /favicon.ico HTTP/1.1 // Host: 127.0.0.1:8080 @@ -12,7 +12,7 @@ // Sec-Fetch-Mode: no-cors // Sec-Fetch-Site: same-origin -Request::Request(const std::string &requestString) +Request::Request(const std::string &requestString, ClientData& c) :client(c) { size_t methodEnd = requestString.find_first_of(" \t"); this->method = requestString.substr(0, methodEnd); @@ -57,27 +57,46 @@ Request::Request(const std::string &requestString) this->headerPairs[headerKey] = headerValue; } this->body = requestString.substr(versionEnd + 2, requestString.size() - versionEnd); - this->convertToEnv(); + // this->convertToEnv(); } + +template +void printMap(T mp) { + for (typename T::iterator it = mp.begin(); it != mp.end(); ++it){ + std::cout << "->" << *it << std::endl; + } +} void Request::convertToEnv(void) { vEnv.push_back("REQUEST_METHOD="+ method); + vEnv.push_back("SERVER_NAME=Webserv"); + vEnv.push_back("SERVER_PORT="+ std::to_string(client.server->getPort())); vEnv.push_back("SCRIPT_FILENAME="+ path); + vEnv.push_back("GATEWAY_INTERFACE=CGI/1.1"); + vEnv.push_back("SCRIPT_FILENAME="+ client.server->getRootPath() + path); // add the info path if (!query.empty()) vEnv.push_back("QUERY_STRING="+ query); if (!headerPairs["Content-Type"].empty()) vEnv.push_back("CONTENT_TYPE="+ headerPairs["Content-Type"]); + else + vEnv.push_back("CONTENT_TYPE=text/html"); + if (!headerPairs["Content-Length"].empty()) vEnv.push_back("CONTENT_LENGTH="+ headerPairs["Content-Length"]); + else + vEnv.push_back("CONTENT_LENGTH=0"); + if (!headerPairs["Host"].empty()) vEnv.push_back("HTTP_HOST="+ headerPairs["Host"]); + if (!headerPairs["User-Agent"].empty()) vEnv.push_back("HTTP_USER_AGENT="+ headerPairs["User-Agent"]); if (!headerPairs["Cookie"].empty()) - vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); + vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); // is this correct HTTP_COOKIE=session=0c4982e7b7ef3dca?? if (!headerPairs["Authorization"].empty()) vEnv.push_back("HTTP_AUTHORIZATION="+ headerPairs["Authorization"]); + printMap(vEnv); // remove this } std::string Request::getEnv(size_t i) const diff --git a/srcs/utils/ClientData.cpp b/srcs/utils/ClientData.cpp index 91c75fa..47819f6 100644 --- a/srcs/utils/ClientData.cpp +++ b/srcs/utils/ClientData.cpp @@ -11,6 +11,7 @@ /* ************************************************************************** */ #include "./../../headers/ClientData.hpp" +#include "../../headers/Response.hpp" ClientData::~ClientData() { From 417257b7af6138639ec778b8aae23fdfa15c2153 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Wed, 21 May 2025 08:01:42 +0100 Subject: [PATCH 43/66] clean --- configs/config.conf | 2 +- headers/Types.hpp | 2 ++ srcs/models/Response.cpp | 28 ++++++++++++----------- srcs/models/ResponseUtils.cpp | 9 ++++---- srcs/models/WebservHandler.cpp | 4 +++- var/www/html/autoindex/folder1/index.html | 11 +++++++++ 6 files changed, 36 insertions(+), 20 deletions(-) diff --git a/configs/config.conf b/configs/config.conf index 83848f2..7a7d71e 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -24,7 +24,7 @@ error_page_404 = "errors/404.html" error_page_500 = "errors/500.html" # location_root = "var/www/html" -location_root = "websites/main" +location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" diff --git a/headers/Types.hpp b/headers/Types.hpp index c5e5117..b1aacda 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -24,6 +24,8 @@ # include # include # include // For getaddrinfo +#include +#include # define FIRST_INDEX 0 diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d020a5c..264a979 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -3,20 +3,17 @@ /* ::: :::::::: */ /* Response.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/17 11:04:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/20 13:08:36 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Response.hpp" #include "../../headers/ResponseUtils.hpp" -// #include "../../headers/ClientData.hpp" #include "../../headers/header.hpp" -#include -#include -#include +#include Response::~Response(void) { if (fd != -1) @@ -73,7 +70,6 @@ Response::Response(struct ClientData &client, Request &req) { headers["Content-Length"] = "0"; headers["Date"] = ResponseUtils::getDateTime(); fd = -1; - if (full_path.find("..") != std::string::npos) status_code = FORBIDDEN; else if (!client.server->getAllowedMethods()[req.getMethod()]) { @@ -88,13 +84,17 @@ Response::Response(struct ClientData &client, Request &req) { } else if (!ResponseUtils::pathExists(full_path)) status_code = NOT_FOUND; - else if (req.getMethod() == "GET") + else if (req.getMethod() == "GET") { + std::cout << "Before handling Post" << std::endl; handleGet(client, req, full_path); + std::cout << "After handling Post" << std::endl; + } else if (req.getMethod() == "POST") handlePost(client, req, full_path); else if (req.getMethod() == "DELETE") handleDelete(client, req, full_path); - + + std::cout << "Before switch: " << status_code << std::endl; switch (status_code) { // 30x case MOVED_PERMANENTLY: @@ -123,8 +123,7 @@ Response::Response(struct ClientData &client, Request &req) { default: status_code = OK; status_text = "OK"; - headers["Content-Type"] = MimeTypes::getMimeType(full_path); - status_code = OK; + headers["Content-Length"] = ResponseUtils::toString(body.length()); } } @@ -145,7 +144,6 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p isFile = false; std::map indexes = client.server->getIndexes(); index = ResponseUtils::isIndexFileExist(indexes, path); - if (!index.empty()) isFile = true; else if (client.server->getAutoIndex()) { body = ResponseUtils::generateAutoIndex(path); @@ -170,6 +168,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p } contentLength = fileStat.st_size; headers["Content-Length"] = FtPars::toString(contentLength); + headers["Content-Type"] = MimeTypes::getMimeType(path); } } wServ->enablePOLLOUT(client.fd); @@ -177,8 +176,11 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p } void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { + if (path.find("..") != std::string::npos) { + status_code = FORBIDDEN; + return; + } (void) req; - (void) path; wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index f019d0e..f440ee3 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/15 13:12:06 by mboujama ### ########.fr */ +/* Updated: 2025/05/20 13:38:46 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -138,15 +138,14 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { if (!first) body << "
"; body << "
" - << std::endl; + "" << ent->d_name << "" + "
" << std::endl; first = false; } closedir(dir); if (first) body << "

This directory is empty

"; - body << ""; + body << "
"; return body.str(); } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 3f0e2be..e278780 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/20 09:48:33 by mboujama ### ########.fr */ +/* Updated: 2025/05/20 12:57:49 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -154,7 +154,9 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.resp) return this->_closeClient(client.fd); if (!client.isHeadersSent) { + std::cout << "Before combine" << std::endl; std::string res = client.resp->combineResponse(); + std::cout << "Response = " << res << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; diff --git a/var/www/html/autoindex/folder1/index.html b/var/www/html/autoindex/folder1/index.html index e69de29..cc268a3 100644 --- a/var/www/html/autoindex/folder1/index.html +++ b/var/www/html/autoindex/folder1/index.html @@ -0,0 +1,11 @@ + + + + + + Document + + + Index 1 + + \ No newline at end of file From f83c8371c5f14bd0d5d073797460c5f29ea31310 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Wed, 21 May 2025 08:21:26 +0100 Subject: [PATCH 44/66] fix content-length --- headers/Cgi.hpp | 2 +- headers/{request.hpp => Request.hpp} | 0 srcs/models/{request.cpp => Request.cpp} | 8 +++++--- srcs/models/Response.cpp | 10 ++++------ 4 files changed, 10 insertions(+), 10 deletions(-) rename headers/{request.hpp => Request.hpp} (100%) rename srcs/models/{request.cpp => Request.cpp} (95%) diff --git a/headers/Cgi.hpp b/headers/Cgi.hpp index 3d88034..8ff5808 100644 --- a/headers/Cgi.hpp +++ b/headers/Cgi.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/07 19:52:57 by mboujama #+# #+# */ -/* Updated: 2025/05/08 09:30:03 by mboujama ### ########.fr */ +/* Updated: 2025/05/21 08:03:48 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/headers/request.hpp b/headers/Request.hpp similarity index 100% rename from headers/request.hpp rename to headers/Request.hpp diff --git a/srcs/models/request.cpp b/srcs/models/Request.cpp similarity index 95% rename from srcs/models/request.cpp rename to srcs/models/Request.cpp index 798f175..34fc03a 100644 --- a/srcs/models/request.cpp +++ b/srcs/models/Request.cpp @@ -1,16 +1,17 @@ /* ************************************************************************** */ /* */ /* ::: :::::::: */ -/* request.cpp :+: :+: :+: */ +/* Request.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/20 12:43:53 by mboujama #+# #+# */ -/* Updated: 2025/05/20 12:43:55 by mboujama ### ########.fr */ +/* Updated: 2025/05/21 08:07:56 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Request.hpp" +#include "../../headers/ResponseUtils.hpp" // GET /favicon.ico HTTP/1.1 // Host: 127.0.0.1:8080 @@ -79,11 +80,12 @@ void printMap(T mp) { std::cout << "->" << *it << std::endl; } } + void Request::convertToEnv(void) { vEnv.push_back("REQUEST_METHOD="+ method); vEnv.push_back("SERVER_NAME=Webserv"); - vEnv.push_back("SERVER_PORT="+ std::to_string(client.server->getPort())); + vEnv.push_back("SERVER_PORT="+ ResponseUtils::toString(client.server->getPort())); vEnv.push_back("SCRIPT_FILENAME="+ path); vEnv.push_back("GATEWAY_INTERFACE=CGI/1.1"); vEnv.push_back("SCRIPT_FILENAME="+ client.server->getRootPath() + path); // add the info path diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 264a979..5887acb 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/20 13:08:36 by mboujama ### ########.fr */ +/* Updated: 2025/05/21 08:19:23 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -84,11 +84,8 @@ Response::Response(struct ClientData &client, Request &req) { } else if (!ResponseUtils::pathExists(full_path)) status_code = NOT_FOUND; - else if (req.getMethod() == "GET") { - std::cout << "Before handling Post" << std::endl; + else if (req.getMethod() == "GET") handleGet(client, req, full_path); - std::cout << "After handling Post" << std::endl; - } else if (req.getMethod() == "POST") handlePost(client, req, full_path); else if (req.getMethod() == "DELETE") @@ -123,7 +120,8 @@ Response::Response(struct ClientData &client, Request &req) { default: status_code = OK; status_text = "OK"; - headers["Content-Length"] = ResponseUtils::toString(body.length()); + if (!body.empty()) + headers["Content-Length"] = ResponseUtils::toString(body.length()); } } From 6832362ef8d7ab5fa3646d846835103a54000565 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 21 May 2025 10:32:20 +0100 Subject: [PATCH 45/66] changes at configs --- configs/config.conf | 68 +++++++++--------------------- headers/Server.hpp | 8 ++-- headers/Types.hpp | 8 +++- learning/request.cpp | 4 +- srcs/models/Response.cpp | 3 +- srcs/models/Server.cpp | 43 +++++++++++++------ srcs/models/Webserv.cpp | 18 +++----- srcs/parsing/config/readConfig.cpp | 16 ++++--- srcs/utils/serverUtils.cpp | 4 +- websites/main/ts.php | 14 ++++++ 10 files changed, 97 insertions(+), 89 deletions(-) create mode 100755 websites/main/ts.php diff --git a/configs/config.conf b/configs/config.conf index b580405..ccbc137 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,14 +5,14 @@ # required host = "127.0.0.1" # required -port = "8080" +port = "8080,7070" # required server_name = "myserver.local" # optional client_max_body_size = "40000000000" # Timeouts IN SECONDS # optional -client_timeout = "600" +client_timeout = "555" # optional redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.html,/tasks/index3.html:/new/index3.html" # optional @@ -29,7 +29,7 @@ indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" -upload_store = "var/www/uploads" +upload_store = "websites/main/uploads" cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" @@ -38,59 +38,33 @@ cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" ############################################################################### [server.second] host = "127.0.0.1" -port = "9090" -server_name = "another-server.local" - -# Error page for this server -error_page_403 = "errors/403.html" - -# Route (for path "/static") -location1_path = "static" -location_root = "var/www/html" -allowed_methods = "GET" -autoindex = "off" - +port = "9000" +server_name = "second.local" +location_root = "websites/second" ############################################################################### # Server 3 ############################################################################### [server.third] -host = "127.0.0.1" +host = "0.0.0.0" port = "8081" -server_name = "third-server.local" -client_max_body_size = "2097152" - -# Error pages -error_page_400 = "errors/400.html" -error_page_500 = "errors/500.html" - -# Route (for path "/") -location1_path = "/" -location1_root = "var/www/app" -indexes = "home.html" -allowed_methods = "GET,POST" -autoindex = "off" -location1_upload_enabled = "off" - +server_name = "third.local" +location_root = "websites/third" ############################################################################### # Server 4 ############################################################################### [server.fourth] -host = "0.0.0.0" -port = "4444" -server_name = "fourth-server.local" -client_max_body_size = "5242880" - -# Error pages -error_page_403 = "errors/403.html" -error_page_502 = "errors/502.html" +host = "127.0.0.1" +port = "7071" +server_name = "fourth.local" +location_root = "websites/fourth" -# Route (for path "/") -location1_path = "/" -location1_root = "var/www/public" -indexes = "default.html" -allowed_methods = "GET,POST,DELETE" -autoindex = "on" -location1_upload_enabled = "on" -location1_upload_store = "var/www/public/uploads" \ No newline at end of file +############################################################################### +# Server 5 +############################################################################### +[server.fifth] +host = "0.0.0.0" +port = "6060" +server_name = "fifth.local" +location_root = "websites/fifth" \ No newline at end of file diff --git a/headers/Server.hpp b/headers/Server.hpp index 7f1dd65..c3fbd17 100644 --- a/headers/Server.hpp +++ b/headers/Server.hpp @@ -13,6 +13,7 @@ #pragma once # include "Types.hpp" +#include /// @brief server class that hold data for each website class Server { @@ -28,7 +29,7 @@ class Server { bool autoIndex; //? size_t timeout; uint32_t port; - uint32_t limitClientBodySize; + size_t limitClientBodySize; std::string host; std::string serverName; std::string rootPath; @@ -62,7 +63,7 @@ class Server { bool getEnableUploads(void) const; size_t getTimeout(void) const; uint32_t getPort(void) const; - uint32_t getLimitClientBodySize(void) const; + size_t getLimitClientBodySize(void) const; std::string getHost(void) const; std::string getserverName(void) const; std::string getRootPath(void) const; @@ -82,7 +83,7 @@ class Server { void setTimeout(size_t val); void setHost(std::string& val); void setserverName(std::string& val); - void setLimitClientBodySize(uint32_t val); + void setLimitClientBodySize(size_t val); void setClientBodyTempPath(std::string& val); void setUploadsPath(std::string& val); void setErrorPage404(std::string& val); @@ -98,4 +99,5 @@ class Server { // Server_handlers void initServer(void); + bool isValidServer(void); }; diff --git a/headers/Types.hpp b/headers/Types.hpp index c5e5117..58a6dca 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -12,6 +12,7 @@ # include # include # include +#include # include # include # include @@ -23,6 +24,7 @@ # include # include # include +# include # include // For getaddrinfo # define FIRST_INDEX 0 @@ -45,8 +47,8 @@ #define SO_NOSIGPIPE 0x1022 #endif -#define LISTEN_BACKLOG 256 //! should we increase this ? -#define DEFAULT_ROOT_PATH "./website" +#define LISTEN_BACKLOG 1024 +// #define DEFAULT_ROOT_PATH "./website" #define BODY_TEMP_PATH "./tmp/path" @@ -57,6 +59,8 @@ # define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 +# define DEFAULT_TIME_OUT 5 + #define CHARS_SIZE 256 diff --git a/learning/request.cpp b/learning/request.cpp index 4e9adf8..90821c7 100644 --- a/learning/request.cpp +++ b/learning/request.cpp @@ -6,11 +6,11 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/15 16:39:40 by ochouati #+# #+# */ -/* Updated: 2025/05/15 16:39:41 by ochouati ### ########.fr */ +/* Updated: 2025/05/19 16:11:20 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ -#include "request.hpp" +#include "../headers/request.hpp" // GET /favicon.ico HTTP/1.1 // Host: 127.0.0.1:8080 diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 8f659eb..26d0c5e 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/17 11:04:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/20 12:19:58 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -179,6 +179,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { (void) req; (void) path; + client.server->getEnableUploads(); wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 02157f4..27ba92c 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -11,18 +11,14 @@ /* ************************************************************************** */ #include "../../headers/header.hpp" -#include //! +#include +#include +#include -Server::Server(void)//! why ? + +Server::Server(void) //! i think I have to remove this { - this->limitClientBodySize = FT_LIMIT_BODY_SIZE; - this->port = FT_PORT; - this->serverName = "127.0.0.1"; - this->serverBind = -1; - this->serverSocket = -1; - this->rootPath = DEFAULT_ROOT_PATH; - this->clientBodyTempPath = BODY_TEMP_PATH; } Server::~Server(void) @@ -35,6 +31,7 @@ Server::~Server(void) Server::Server(const Server& srv, uint32_t port) //! { + this->rootPath = srv.rootPath; this->host = srv.host; this->port = port; this->serverName = srv.serverName; @@ -46,20 +43,22 @@ Server::Server(const Server& srv, uint32_t port) //! this->autoIndex = srv.autoIndex; this->serverBind = -1; this->serverSocket = -1; + this->timeout = srv.timeout; } Server::Server(std::vector& arr, size_t& idx) { this->limitClientBodySize = FT_LIMIT_BODY_SIZE; - this->port = FT_PORT; + this->port = INT_MAX; this->allowedMethods["GET"] = true; this->allowedMethods["POST"] = false; this->allowedMethods["DELETE"] = false; this->indexes["index.html"] = false; this->autoIndex = false; this->enableUploads = false; - // this->uploadPath = "uploads"; + this->clientBodyTempPath = BODY_TEMP_PATH; + this->timeout = DEFAULT_TIME_OUT; setServer(arr, idx, *this); } @@ -89,7 +88,7 @@ std::string Server::getRootPath(void) const return (this->rootPath); } -uint32_t Server::getLimitClientBodySize(void) const +size_t Server::getLimitClientBodySize(void) const { return (this->limitClientBodySize); } @@ -192,7 +191,7 @@ void Server::setserverName(std::string& val) this->serverName = val; } -void Server::setLimitClientBodySize(uint32_t val) +void Server::setLimitClientBodySize(size_t val) { this->limitClientBodySize = val; } @@ -255,7 +254,7 @@ void Server::initServer(void) this->ftBind(); this->ftListen(); this->setNonBlocking(this->serverSocket); - std::cout << "Path: " << this->rootPath << std::endl; + std::cout << "Path: " << this->rootPath << " " << (this->rootPath.empty() ? "Empty" : "") << std::endl; } void Server::ftSocket(void) @@ -305,3 +304,19 @@ void Server::setNonBlocking(int fd) if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) throw std::runtime_error("Set non blocking failed"); } + +bool Server::isValidServer(void) +{ + std::cout << "Server: " << this->serverName << std::endl; + std::cout << "Host: " << this->host << std::endl; + std::cout << "Port: " << this->port << std::endl; + std::cout << "Root: " << this->rootPath << std::endl; + std::cout << "Limit Client Body Size: " << this->limitClientBodySize << std::endl; + std::cout << "Timeout: " << this->timeout << std::endl; + std::cout << " ********\n"; + if (this->rootPath.empty() || this->port == INT_MAX || this->host.empty()) { + std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; + return (false); + } + return (true); +} diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 44decde..638ad80 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/19 10:08:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/19 16:25:35 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -66,10 +66,8 @@ void Webserv::run() { else this->handleClientRequest(_pollfds[i].fd); } - if (_pollfds[i].revents & POLLOUT) { - // std::cout << COL_BLUE << "Sending response to client..." << END_COL << std::endl; + if (_pollfds[i].revents & POLLOUT) this->sendResponse(_pollfds[i].fd); - } } this->timeoutHandler(); } @@ -129,7 +127,7 @@ void Webserv::handleClientRequest(int fd) { char buffer[READ_SIZE]; ssize_t bytesRead = recv(fd, buffer, READ_SIZE - 1, 0); - if (bytesRead < 0) { + if (bytesRead <= 0) { if (bytesRead == 0) { std::cout << "Client disconnected" << std::endl; } else { @@ -143,22 +141,16 @@ void Webserv::handleClientRequest(int fd) this->_requests[fd].request.append(buffer, bytesRead); std::map::iterator it = this->_requests.find(fd); if (it == this->_requests.end()) return; - if (it->second.bodyReded != -1) { + if (it->second.bodyReded != -1) it->second.bodyReded += bytesRead; - // std::cout << COL_GREEN << "Body readed: " << it->second.bodyReded << END_COL << std::endl; - } - if (this->_isRequestComplete(it->second)) { + if (this->_isRequestComplete(it->second)) this->prepareClientResponse(it->second); - } } void Webserv::prepareClientResponse(ClientData& client) { - std::cout << COL_BLUE << "Preparing Request for client..." << END_COL << std::endl; try { - Request req(client.headers.append(client.request)); - std::cout << COL_BLUE << "2. Preparing response for client..." << END_COL << std::endl; if (!client.resp) client.resp = new Response(client, req); client.progress = READY; diff --git a/srcs/parsing/config/readConfig.cpp b/srcs/parsing/config/readConfig.cpp index 221411d..7cb764c 100644 --- a/srcs/parsing/config/readConfig.cpp +++ b/srcs/parsing/config/readConfig.cpp @@ -13,6 +13,7 @@ #include "./../../../headers/readConfig.hpp" #include "./../../../headers/FtPars.hpp" #include "./../../../headers/header.hpp" +#include readConfig::readConfig(void) { @@ -91,20 +92,25 @@ void readConfig::readFile(char *argFile) else ++x; } - this->seperateServers(); std::cout << " --------- ------------ ------------- ------------ \n"; - // for (size_t i = 0; i < this->servers.size(); ++i) { //! - // std::cout << "Id: " << i << std::endl; - // printServer(this->servers[i]); - // } + this->seperateServers(); } void readConfig::seperateServers(void) { + std::cout << "Seperating server: __ " << this->servers.size() << std::endl; for (size_t i = 0; i < this->servers.size(); ++i) { for (size_t j = 1; j < this->servers[i].getPorts().size(); j++) { Server tmp = Server(this->servers[i], this->servers[i].getPorts()[j]); this->servers.push_back(tmp); } } + std::cout << "Seperated servers:: " << this->servers.size() << std::endl; + for (size_t i = 0; i < this->servers.size();) { + if (!this->servers[i].isValidServer()) { + this->servers.erase(this->servers.begin() + i); + } else + ++i; + } + std::cout << "Seperated servers:: " << this->servers.size() << std::endl; } diff --git a/srcs/utils/serverUtils.cpp b/srcs/utils/serverUtils.cpp index 0134dca..5740e46 100644 --- a/srcs/utils/serverUtils.cpp +++ b/srcs/utils/serverUtils.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/11 19:30:28 by ochouati #+# #+# */ -/* Updated: 2025/05/11 19:35:54 by ochouati ### ########.fr */ +/* Updated: 2025/05/20 12:21:42 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -48,7 +48,7 @@ void Server::fillServerData(std::string& line, Server& srv) { FtPars::serverPortsHandler(srv, str); } else if (!line.compare(0, 20, "client_max_body_size")) { this->validateAndTrim(str); - srv.setLimitClientBodySize(std::atoi(str.c_str())); + srv.setLimitClientBodySize(std::atol(str.c_str())); } else if (!line.compare(0, 14, "error_page_404")) { this->validateAndTrim(str); srv.setErrorPage404(str); diff --git a/websites/main/ts.php b/websites/main/ts.php new file mode 100755 index 0000000..be3ff2c --- /dev/null +++ b/websites/main/ts.php @@ -0,0 +1,14 @@ + + + + + + Document + + + + + \ No newline at end of file From 492ccd5f8711a54da94e8313d8f9e6d681ceeffc Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 21 May 2025 12:23:58 +0100 Subject: [PATCH 46/66] working on file upload --- configs/config.conf | 6 +- headers/ClientData.hpp | 3 +- headers/HttpErrors.hpp | 3 +- headers/Types.hpp | 2 +- srcs/models/Response.cpp | 8 +- srcs/models/Server.cpp | 3 + srcs/models/Upload.cpp | 17 +- srcs/models/WebservHandler.cpp | 26 +- srcs/utils/httpResponseErrors.cpp | 13 +- srcs/utils/serverUtils.cpp | 5 +- var/tmp/upload_Server.cpp | 325 ++++++++++++++++++++++++ var/tmp/upload_Upload.cpp | 121 +++++++++ websites/main/uploads/ResponseUtils.cpp | 201 +++++++++++++++ websites/upload/index.html | 2 +- 14 files changed, 701 insertions(+), 34 deletions(-) create mode 100644 var/tmp/upload_Server.cpp create mode 100644 var/tmp/upload_Upload.cpp create mode 100644 websites/main/uploads/ResponseUtils.cpp diff --git a/configs/config.conf b/configs/config.conf index ccbc137..4833ce9 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -23,13 +23,13 @@ error_page_404 = "errors/404.html" # optional error_page_500 = "errors/500.html" -# location_root = "var/www/html" +# location_root required location_root = "websites/main" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" -upload_store = "websites/main/uploads" +upload_store = "websites/main/uploads/" cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" @@ -40,7 +40,7 @@ cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" host = "127.0.0.1" port = "9000" server_name = "second.local" -location_root = "websites/second" +location_root = "var/www/html" ############################################################################### # Server 3 diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 9588503..c971c4d 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/04 13:07:08 by ochouati #+# #+# */ -/* Updated: 2025/05/17 08:40:44 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 12:16:29 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -38,6 +38,7 @@ struct ClientData { std::string error; std::string tmpFolder; std::string tmpFileName; + std::string fileName; requestType type; requestProgress progress; std::map uploadFd; diff --git a/headers/HttpErrors.hpp b/headers/HttpErrors.hpp index adfca94..52d9e0b 100644 --- a/headers/HttpErrors.hpp +++ b/headers/HttpErrors.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/08 15:20:55 by ochouati #+# #+# */ -/* Updated: 2025/05/14 12:09:40 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 11:41:54 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -18,4 +18,5 @@ class HttpErrors { static void httpResponse400(ClientData& client); static void httpResponse414(ClientData& client); static void httpResponse413(ClientData& client); + static void httpResponse405(ClientData& client); }; diff --git a/headers/Types.hpp b/headers/Types.hpp index 58a6dca..6b29312 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -55,7 +55,7 @@ # define RUNNING 1 # define POLL_TIMEOUT 50 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 4096 +# define READ_SIZE 8192 # define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 26d0c5e..1fd2d4b 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/20 12:19:58 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 10:43:13 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -16,6 +16,7 @@ #include "../../headers/header.hpp" #include #include +#include #include Response::~Response(void) { @@ -179,6 +180,11 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { (void) req; (void) path; + if (path.find("..") != std::string::npos) { + status_code = FORBIDDEN; + return; + } + status_code = OK; client.server->getEnableUploads(); wServ->enablePOLLOUT(client.fd); client.progress = READY; diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 27ba92c..d2c798e 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -313,6 +313,9 @@ bool Server::isValidServer(void) std::cout << "Root: " << this->rootPath << std::endl; std::cout << "Limit Client Body Size: " << this->limitClientBodySize << std::endl; std::cout << "Timeout: " << this->timeout << std::endl; + std::cout << "Enable Uploads: " << (this->enableUploads ? "true" : "false") << std::endl; + std::cout << "Auto Index: " << (this->autoIndex ? "true" : "false") << std::endl; + std::cout << "Upload path: " << this->uploadsPath << std::endl; std::cout << " ********\n"; if (this->rootPath.empty() || this->port == INT_MAX || this->host.empty()) { std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 886252f..07bbae9 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -48,14 +48,14 @@ void processMultipartUpload(ClientData &client) { ssize_t written; + std::cout << COL_RED << "uploading..." << END_COL << std::endl; while(!client.request.empty()) { if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ size_t headers = client.request.find("\r\n\r\n"); - std::string fileName; if (headers != std::string::npos) { - fileName = getFileName(client.request); - if (!fileName.empty()) { - client.tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + fileName; //! remove prefix & chan + add temp folder + client.fileName = getFileName(client.request); + if (!client.fileName.empty()) { + client.tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) close(client.uploadFd[client.tmpFileName]); client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); @@ -70,7 +70,6 @@ void processMultipartUpload(ClientData &client) return; } - std::cout << COL_RED << "uploading..." << END_COL << std::endl; if (client.request.find("\r") != std::string::npos){ size_t boundaryPos = client.request.find("--" + client.boundary + "\r\n"); @@ -94,8 +93,14 @@ void processMultipartUpload(ClientData &client) client.request.c_str(), endBoundary > 2 ? endBoundary - 2: 0); client.request.clear(); - client.tmpFileName.clear(); closeFiles(client); + std::cout << COL_GREEN << "tmpfile: "<< client.tmpFileName.c_str() << END_COL << std::endl; + std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + client.fileName << END_COL << std::endl; + std::rename(client.tmpFileName.c_str(), (client.server->getUploadsPath() + client.fileName).c_str()); //! handle if it failed + std::remove(client.tmpFileName.c_str()); + client.tmpFileName.clear(); + std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; + //! REQUEST_COMPLETE } else diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index abb018d..dacebee 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/17 13:58:51 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 12:08:16 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -29,7 +29,6 @@ WebservHandler::~WebservHandler() { void WebservHandler::_closeClient(int fd) { - // std::cout << COL_YELLOW << "Closing client fd: " << fd << END_COL << std::endl; for (size_t i = 0; i < _pollfds.size(); ++i) { if (_pollfds[i].fd == fd) { close(fd); @@ -100,6 +99,7 @@ bool WebservHandler::isRequestComplete(ClientData& client) else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { client.isRequestComplete = true; + std::cout << COL_BLUE << "Multipart form data received" << END_COL << std::endl; return ((client.progress = COLLECTED), true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) @@ -147,11 +147,8 @@ void WebservHandler::setMethod(ClientData& client) void WebservHandler::handleRequest(ClientData& client) { - if (!client.error.empty()) { - send(client.fd, client.error.c_str(), client.error.size(), 0); - this->_closeClient(client.fd); - return ; - } + if (!client.error.empty()) + return send(client.fd, client.error.c_str(), client.error.size(), 0), this->_closeClient(client.fd); if (!client.resp) return this->_closeClient(client.fd); if (!client.isHeadersSent) { @@ -160,30 +157,22 @@ void WebservHandler::handleRequest(ClientData& client) client.isHeadersSent = true; return; } - // send res - // send file as chunks if ((client.bytesSent < client.resp->getContentlength()) && (client.resp->getFd() != -1)) { - // std::cout << COL_RED << " ==== ==== === === === === ==== === === " << END_COL << std::endl; char s__buffer[SEND_SIZE]; int n = read(client.resp->getFd(), s__buffer, SEND_SIZE - 1); - // std::cout << COL_RED << " ==== ==== === === (N: " << n << ") === === ==== === === " << END_COL << std::endl; if (n <= 0) { std::cout << COL_RED << "Error while reading from file, for client/N: " << client.fd << " -- " << n << END_COL << std::endl; return this->_closeClient(client.fd); } s__buffer[n] = '\0'; - // std::cout << COL_YELLOW << "Buffer: \n\n" << s__buffer << END_COL << std::endl; int j = send(client.fd, s__buffer, n, 0); - // std::cout << COL_RED << " ==== ==== === === (J: " << j << ") === === ==== === === " << END_COL << std::endl; if (j <= 0 || j != n) { std::cout << COL_RED << "Error while sending socket, for client/N: " << client.fd << " -- " << j << END_COL << std::endl; return this->_closeClient(client.fd); } client.bytesSent += j; - } else { - // std::cout << COL_MAGENTA << "The response is sent completely: " << client.bytesSent << END_COL << std::endl; - this->_closeClient(client.fd); // first should be the send everything - } + } else + this->_closeClient(client.fd); } void WebservHandler::validateRequestHeaders(ClientData& client) @@ -193,6 +182,9 @@ void WebservHandler::validateRequestHeaders(ClientData& client) this->validateUrl(client); if (client.type == CHUNKED) return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); + std::map::iterator it = client.server->getAllowedMethods().find(client.method); + if (it == client.server->getAllowedMethods().end()) + return HttpErrors::httpResponse405(client); client.isHeadersChecked = true; } diff --git a/srcs/utils/httpResponseErrors.cpp b/srcs/utils/httpResponseErrors.cpp index 8bcb26a..dd00cba 100644 --- a/srcs/utils/httpResponseErrors.cpp +++ b/srcs/utils/httpResponseErrors.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/08 14:10:39 by ochouati #+# #+# */ -/* Updated: 2025/05/08 16:31:01 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 11:42:53 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -46,3 +46,14 @@ void HttpErrors::httpResponse413(ClientData& client) { client.progress = READY; wServ->enablePOLLOUT(client.fd); } + +void HttpErrors::httpResponse405(ClientData& client) { + std::string response = "HTTP/1.1 413 405 Method Not Allowed\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 57\r\n" + "\r\n

405 Method Not Allowed

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; + wServ->enablePOLLOUT(client.fd); +} diff --git a/srcs/utils/serverUtils.cpp b/srcs/utils/serverUtils.cpp index 5740e46..cdf0048 100644 --- a/srcs/utils/serverUtils.cpp +++ b/srcs/utils/serverUtils.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/11 19:30:28 by ochouati #+# #+# */ -/* Updated: 2025/05/20 12:21:42 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 12:15:26 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -65,7 +65,8 @@ void Server::fillServerData(std::string& line, Server& srv) { this->validateAndTrim(str); FtPars::autoIndexHandler(srv, str); } else if (!line.compare(0, 12, "upload_store")) { - + this->validateAndTrim(str); + srv.setUploadsPath(str); } else if (!line.compare(0, 14, "upload_enabled")) { this->validateAndTrim(str); FtPars::enableUploadsHandler(srv, str); diff --git a/var/tmp/upload_Server.cpp b/var/tmp/upload_Server.cpp new file mode 100644 index 0000000..d2c798e --- /dev/null +++ b/var/tmp/upload_Server.cpp @@ -0,0 +1,325 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* Server.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: ochouati +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/02/13 15:56:06 by ochouati #+# #+# */ +/* Updated: 2025/02/26 09:52:54 by ochouati ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../../headers/header.hpp" +#include +#include +#include + + + +Server::Server(void) //! i think I have to remove this +{ +} + +Server::~Server(void) +{ + if (this->serverSocket != -1) + close(this->serverSocket); + if (this->serverBind != -1) + close(this->serverBind); +} + +Server::Server(const Server& srv, uint32_t port) //! +{ + this->rootPath = srv.rootPath; + this->host = srv.host; + this->port = port; + this->serverName = srv.serverName; + this->limitClientBodySize = srv.limitClientBodySize; + this->errorPage404 = srv.errorPage404; + this->errorPage500 = srv.errorPage500; + this->allowedMethods = srv.allowedMethods; + this->indexes = srv.indexes; + this->autoIndex = srv.autoIndex; + this->serverBind = -1; + this->serverSocket = -1; + this->timeout = srv.timeout; +} + + +Server::Server(std::vector& arr, size_t& idx) +{ + this->limitClientBodySize = FT_LIMIT_BODY_SIZE; + this->port = INT_MAX; + this->allowedMethods["GET"] = true; + this->allowedMethods["POST"] = false; + this->allowedMethods["DELETE"] = false; + this->indexes["index.html"] = false; + this->autoIndex = false; + this->enableUploads = false; + this->clientBodyTempPath = BODY_TEMP_PATH; + this->timeout = DEFAULT_TIME_OUT; + setServer(arr, idx, *this); +} + +// GETTERS +uint32_t Server::getPort(void) const +{ + return (this->port); +} + +size_t Server::getTimeout(void) const +{ + return (this->timeout); +} + +std::string Server::getHost(void) const +{ + return (this->host); +} + +std::string Server::getserverName(void) const +{ + return (this->serverName); +} + +std::string Server::getRootPath(void) const +{ + return (this->rootPath); +} + +size_t Server::getLimitClientBodySize(void) const +{ + return (this->limitClientBodySize); +} + +std::string Server::getErrorPage404(void) const +{ + return (this->errorPage404); +} + +std::string Server::getErrorPage500(void) const +{ + return (this->errorPage500); +} + +std::map Server::getAllowedMethods(void) const { + return (this->allowedMethods); +} + +std::map Server::getIndexes(void) const +{ + return (this->indexes); +} + +bool Server::getAutoIndex(void) const +{ + return (this->autoIndex); +} + +const std::vector& Server::getPorts(void) const +{ + return (this->ports); +} + +bool Server::getEnableUploads(void) const +{ + return (this->enableUploads); +} + +const std::string& Server::getClientBodyTempPath(void) const +{ + return (this->clientBodyTempPath); +} + +const std::string& Server::getUploadsPath(void) const +{ + return (this->uploadsPath); +} + +int Server::getSocket() const +{ + return (this->serverSocket); +} + +std::map& Server::getRedirects(void) +{ + return (this->redirects); +} + +const std::string& Server::getCGI(std::string& val) const +{ + std::map::const_iterator it = this->cgis.find(val); + if (it != this->cgis.end()) + return (it->second); + return (*(notFound)); +} + +const std::map& Server::getCGIs() const +{ + return (this->cgis); +} + +// SETTERS +void Server::setPort(uint32_t val) +{ + this->port = val; +} + +void Server::setTimeout(size_t val) +{ + this->timeout = val; +} + +void Server::setHost(std::string& val) +{ + this->host = val; +} + +void Server::setClientBodyTempPath(std::string& val) +{ + this->clientBodyTempPath = val; +} + +void Server::setUploadsPath(std::string& val) +{ + this->uploadsPath = val; +} + +void Server::setserverName(std::string& val) +{ + this->serverName = val; +} + +void Server::setLimitClientBodySize(size_t val) +{ + this->limitClientBodySize = val; +} + +void Server::setErrorPage404(std::string& val) +{ + this->errorPage404 = val; +} + +void Server::setErrorPage500(std::string& val) +{ + this->errorPage500 = val; +} + +void Server::setIndex(std::string& key, bool val) +{ + this->indexes[key] = val; +} + +void Server::setMethods(std::map mp) +{ + this->allowedMethods = mp; +} + +void Server::setAutoIndex(bool val) +{ + this->autoIndex = val; +} +void Server::setPorts(uint32_t val) +{ + this->ports.push_back(val); +} + +void Server::setEnableUploads(bool val) +{ + this->enableUploads = val; +} + +void Server::setRootPath(std::string& val) +{ + this->rootPath = val; +} + +void Server::setRedirects(const std::string& key, const std::string& val) +{ + this->redirects[key] = val; +} + +void Server::setCGI(std::string& key, std::string& val) +{ + this->cgis[key] = val; +} + +// INET FUNCTIONS + +void Server::initServer(void) +{ + this->ftSocket(); + this->setSocketOptions(); + this->ftBind(); + this->ftListen(); + this->setNonBlocking(this->serverSocket); + std::cout << "Path: " << this->rootPath << " " << (this->rootPath.empty() ? "Empty" : "") << std::endl; +} + +void Server::ftSocket(void) +{ + this->serverSocket = socket(AF_INET, SOCK_STREAM, 0); + if (this->serverSocket < 0) + throw std::runtime_error("Socket creation failed"); +} + +void Server::setSocketOptions(void) +{ + int opt = 1; + if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0) + throw std::runtime_error("Set socket options REUSEADDR failed"); + #ifdef __APPLE__ + if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) + throw std::runtime_error("Set socket options SO_NOSIGPIPE failed"); + #endif + #ifdef __linux__ + signal(SIGPIPE, SIG_IGN); + #endif +} + + +void Server::ftBind(void) +{ + struct sockaddr_in addr; + + std::memset(&addr, 0, sizeof(addr)); + addr.sin_family = AF_INET; + addr.sin_port = htons(this->port); + std::cout << "Host: " << COL_GREEN << this->host << END_COL " Port: " << COL_YELLOW << this->port << END_COL << std::endl; + addr.sin_addr.s_addr = inet_addr(this->host.c_str()); + if ((this->serverBind = bind(this->serverSocket, (struct sockaddr *)&addr, sizeof(addr))) < 0) + throw std::runtime_error("Bind failed 3"); +} + + +void Server::ftListen(void) +{ + if ((this->serverListenFd = listen(this->serverSocket, LISTEN_BACKLOG)) < 0) + throw std::runtime_error("Listen failed"); +} + +void Server::setNonBlocking(int fd) +{ + if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) + throw std::runtime_error("Set non blocking failed"); +} + +bool Server::isValidServer(void) +{ + std::cout << "Server: " << this->serverName << std::endl; + std::cout << "Host: " << this->host << std::endl; + std::cout << "Port: " << this->port << std::endl; + std::cout << "Root: " << this->rootPath << std::endl; + std::cout << "Limit Client Body Size: " << this->limitClientBodySize << std::endl; + std::cout << "Timeout: " << this->timeout << std::endl; + std::cout << "Enable Uploads: " << (this->enableUploads ? "true" : "false") << std::endl; + std::cout << "Auto Index: " << (this->autoIndex ? "true" : "false") << std::endl; + std::cout << "Upload path: " << this->uploadsPath << std::endl; + std::cout << " ********\n"; + if (this->rootPath.empty() || this->port == INT_MAX || this->host.empty()) { + std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; + return (false); + } + return (true); +} diff --git a/var/tmp/upload_Upload.cpp b/var/tmp/upload_Upload.cpp new file mode 100644 index 0000000..07bbae9 --- /dev/null +++ b/var/tmp/upload_Upload.cpp @@ -0,0 +1,121 @@ +#include "../../headers/Webserv.hpp" + + +/*-------- LARGE FILES ALGORITHM: --------*/ +// Receive chunk → store in buffer +// Scan for --boundary123: +// Found: +// Save previous data to temp file +// Parse headers for new filename +// Start new temp file +// Not found: Append to current temp file +// On --boundary123--: +// Finalize last file +// Delete partial data if any +// Only after ALL boundaries processed: +// Rename temp files to final names +/*-----------------------------------------*/ + + +/// get file name from a buffer request +std::string getFileName(const std::string &buffer){ + std::string fileName; + size_t i = buffer.find("filename=\""); + if (i != std::string::npos) { + for (i = i + 10; buffer[i] != '"' && buffer[i] ; ++i){ + fileName += buffer[i]; + } + if(buffer[i] != '"') + return ""; + } + return fileName; +} + +void closeFiles(ClientData &client) +{ + std::map::iterator it; + + for (it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it) + close(it->second); + client.uploadFd.clear(); +} + +//! set client.currentFileFd to -1 +//! call setheader() function (I am not sure about the function name) +// You should put all tmp files in a temp folder +// you should close all the files + you should reset the files +void processMultipartUpload(ClientData &client) +{ + ssize_t written; + + std::cout << COL_RED << "uploading..." << END_COL << std::endl; + while(!client.request.empty()) { + if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ + size_t headers = client.request.find("\r\n\r\n"); + if (headers != std::string::npos) { + client.fileName = getFileName(client.request); + if (!client.fileName.empty()) { + client.tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) + close(client.uploadFd[client.tmpFileName]); + client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); + if (client.uploadFd[client.tmpFileName] == -1){ + closeFiles(client); + break; //! close all the files + } + } + client.request.erase(0, headers + 4); + } + else + return; + } + + + if (client.request.find("\r") != std::string::npos){ + size_t boundaryPos = client.request.find("--" + client.boundary + "\r\n"); + size_t endBoundary; + if (boundaryPos != std::string::npos) { + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()){ + written = write(client.uploadFd[client.tmpFileName], + client.request.c_str(), + boundaryPos > 2 ? boundaryPos - 2: 0); + if (written == -1){ + closeFiles(client); + return; + } + } + client.request.erase(0, boundaryPos + client.boundary.size() + 4); + client.tmpFileName.clear(); + continue; + } + else if((endBoundary = client.request.find("--" + client.boundary + "--\r\n")) != std::string::npos){ + written = write(client.uploadFd[client.tmpFileName], + client.request.c_str(), + endBoundary > 2 ? endBoundary - 2: 0); + client.request.clear(); + closeFiles(client); + std::cout << COL_GREEN << "tmpfile: "<< client.tmpFileName.c_str() << END_COL << std::endl; + std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + client.fileName << END_COL << std::endl; + std::rename(client.tmpFileName.c_str(), (client.server->getUploadsPath() + client.fileName).c_str()); //! handle if it failed + std::remove(client.tmpFileName.c_str()); + client.tmpFileName.clear(); + std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; + + //! REQUEST_COMPLETE + } + else + return; + } + + if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) { + written = write(client.uploadFd[client.tmpFileName], + client.request.c_str(), + client.request.size()); + if (written == -1){ + closeFiles(client); + return; + } + client.request.erase(0, written); + } + } +} diff --git a/websites/main/uploads/ResponseUtils.cpp b/websites/main/uploads/ResponseUtils.cpp new file mode 100644 index 0000000..f019d0e --- /dev/null +++ b/websites/main/uploads/ResponseUtils.cpp @@ -0,0 +1,201 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ResponseUtils.cpp :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mboujama +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ +/* Updated: 2025/05/15 13:12:06 by mboujama ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../../headers/ResponseUtils.hpp" +#include +#include +#include + +std::string ResponseUtils::getDateTime() { + time_t rawtime; + struct tm * datetime; + char buffer[80]; + + time(&rawtime); + datetime = localtime(&rawtime); + + strftime (buffer, 80, "%a, %d %h %Y %T", datetime); + return std::string(buffer); +} + +std::string ResponseUtils::allowHeaderValue(std::map allowedMethods) { + std::ostringstream oss; + bool first = true; + + std::map::iterator it; + for (it = allowedMethods.begin(); it != allowedMethods.end(); it++) { + if (it->second) { + if (!first) oss << ", "; + oss << it->first; + first = false; + } + } + return oss.str(); +} + +bool ResponseUtils::pathExists(const std::string& path) { + return access(path.c_str(), F_OK) == 0; +} + +bool ResponseUtils::isDirectory(const std::string& path) { + struct stat info; + + stat(path.c_str(), &info); + return S_ISDIR(info.st_mode); +} + +int ResponseUtils::openFile(const std::string& filepath) { + int fd = open(filepath.c_str(), O_RDONLY); + // ? What is the file didn't open ? + + return fd; +} + +std::string ResponseUtils::toString(long value) { + std::ostringstream oss; + oss << value; + return oss.str(); +} + +std::string ResponseUtils::isIndexFileExist(std::map &indexes, const std::string &path) { + DIR *dir; + struct dirent *ent; + std::map::iterator it; + + dir = opendir(path.c_str()); + if (!dir) { + std::cout << COL_MAGENTA << "Can't open directory in 'isIndexFileExist'" << END_COL << std::endl; + return ""; + } + while ((ent = readdir(dir))) { + if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) + continue ; + if ((it = indexes.find(ent->d_name)) != indexes.end()) + return closedir(dir), it->first; + } + return closedir(dir), ""; +} + +std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { + std::string content; + std::string errorsPath = "var/www/html/errors/"; + + std::ifstream file; + switch (status) { + case FORBIDDEN: + file.open((errorsPath + std::string("403.html")).c_str()); + break; + case NOT_FOUND: + file.open((errorsPath + std::string("404.html")).c_str()); + break; + case METHOD_NOT_ALLOWED: + file.open((errorsPath + std::string("405.html")).c_str()); + break; + case INTERNAL_SERVER_ERROR: + file.open((errorsPath + std::string("500.html")).c_str()); + break; + default: + content = "Under control"; + } + + if (file.is_open()) { + std::string line; + + while (file) { + std::getline(file, line); + content.append(line); + } + } + else + std::cout << "File doesn't opened" << std::endl; + + return content; +} + +std::string ResponseUtils::generateAutoIndex(std::string filepath) { + std::stringstream body; + DIR *dir; + struct dirent *ent; + bool first = true; + + body << "" << filepath << "
"; + + dir = opendir(filepath.c_str()); + if (!dir) + return ""; + while ((ent = readdir(dir))) { + if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) + continue ; + if (!first) + body << "
"; + body << "" + << std::endl; + first = false; + } + closedir(dir); + if (first) + body << "

This directory is empty

"; + body << ""; + return body.str(); +} + +bool ResponseUtils::deleteFile(const std::string& path) +{ + if (remove(path.c_str()) != 0) { + std::cerr << "Error deleting file: " << path << std::endl; + return false; + } + return true; +} + +bool ResponseUtils::deleteFolder(const std::string& path) +{ + DIR* dir = opendir(path.c_str()); + + if (!dir) { + std::cout << COL_MAGENTA << "Can't open directory in 'deleteFolder'" << END_COL << std::endl; + return false; + } + struct dirent* entry; + while ((entry = readdir(dir)) != NULL) + { + if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") + continue; + std::string filePath = path + "/" + entry->d_name; + if (entry->d_type == DT_DIR) + deleteFolder(filePath); + else + deleteFile(filePath); + } + closedir(dir); + if (remove(path.c_str()) != 0) { + std::cerr << "Error deleting directory: " << path << std::endl; + return (false); + } + return true; +} + +std::string ResponseUtils::getAllowHeader(std::map allowed) { + std::string ret; + bool first = true; + std::map::iterator it; + + for (it = allowed.begin(); it != allowed.end(); it++) { + if (!first) + ret.append(", "); + ret.append(it->first); + first = false; + } + return ret; +} diff --git a/websites/upload/index.html b/websites/upload/index.html index c64e96c..00a1a7d 100644 --- a/websites/upload/index.html +++ b/websites/upload/index.html @@ -36,7 +36,7 @@ console.log("Hello, World!"); const form = document.querySelector('.main-form'); form.addEventListener('submit', function(event) { - const serverUrl = "http://localhost:8080/upload"; // Replace with your server URL + const serverUrl = "http://localhost:8080/uploads"; // Replace with your server URL event.preventDefault(); // Prevent the default form submission console.log("Form submitted!"); const fileInput = document.getElementById('file'); From b7c85c4dab000af01585f2e04121a8d7e3d94ee2 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 21 May 2025 12:52:27 +0100 Subject: [PATCH 47/66] CORS origin fixed --- srcs/models/Response.cpp | 13 +- srcs/models/WebservHandler.cpp | 3 +- websites/main/uploads/ResponseUtils.cpp | 201 ------------------------ websites/upload/index.html | 28 ++-- 4 files changed, 26 insertions(+), 219 deletions(-) delete mode 100644 websites/main/uploads/ResponseUtils.cpp diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 1fd2d4b..d02a2bc 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/21 10:43:13 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 12:51:08 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -97,6 +97,8 @@ Response::Response(struct ClientData &client, Request &req) { handleDelete(client, req, full_path); switch (status_code) { + case CREATED: + break ; // 30x case MOVED_PERMANENTLY: if (body.empty()) @@ -180,11 +182,10 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p void Response::handlePost(struct ClientData &client, Request &req, std::string &path) { (void) req; (void) path; - if (path.find("..") != std::string::npos) { - status_code = FORBIDDEN; - return; - } - status_code = OK; + + status_code = CREATED; + status_text = "Created"; + headers["Allow-Origin"] = "*"; client.server->getEnableUploads(); wServ->enablePOLLOUT(client.fd); client.progress = READY; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index dacebee..4c90ce2 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/21 12:08:16 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 12:36:10 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -82,6 +82,7 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.bodyReded = client.request.size(); client.progress = WORKING; this->setMethod(client); + std::cout << COL_RED << "Headers: \n" << client.headers << END_COL << std::endl; return (true); } return (false); diff --git a/websites/main/uploads/ResponseUtils.cpp b/websites/main/uploads/ResponseUtils.cpp deleted file mode 100644 index f019d0e..0000000 --- a/websites/main/uploads/ResponseUtils.cpp +++ /dev/null @@ -1,201 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* ResponseUtils.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/15 13:12:06 by mboujama ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "../../headers/ResponseUtils.hpp" -#include -#include -#include - -std::string ResponseUtils::getDateTime() { - time_t rawtime; - struct tm * datetime; - char buffer[80]; - - time(&rawtime); - datetime = localtime(&rawtime); - - strftime (buffer, 80, "%a, %d %h %Y %T", datetime); - return std::string(buffer); -} - -std::string ResponseUtils::allowHeaderValue(std::map allowedMethods) { - std::ostringstream oss; - bool first = true; - - std::map::iterator it; - for (it = allowedMethods.begin(); it != allowedMethods.end(); it++) { - if (it->second) { - if (!first) oss << ", "; - oss << it->first; - first = false; - } - } - return oss.str(); -} - -bool ResponseUtils::pathExists(const std::string& path) { - return access(path.c_str(), F_OK) == 0; -} - -bool ResponseUtils::isDirectory(const std::string& path) { - struct stat info; - - stat(path.c_str(), &info); - return S_ISDIR(info.st_mode); -} - -int ResponseUtils::openFile(const std::string& filepath) { - int fd = open(filepath.c_str(), O_RDONLY); - // ? What is the file didn't open ? - - return fd; -} - -std::string ResponseUtils::toString(long value) { - std::ostringstream oss; - oss << value; - return oss.str(); -} - -std::string ResponseUtils::isIndexFileExist(std::map &indexes, const std::string &path) { - DIR *dir; - struct dirent *ent; - std::map::iterator it; - - dir = opendir(path.c_str()); - if (!dir) { - std::cout << COL_MAGENTA << "Can't open directory in 'isIndexFileExist'" << END_COL << std::endl; - return ""; - } - while ((ent = readdir(dir))) { - if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) - continue ; - if ((it = indexes.find(ent->d_name)) != indexes.end()) - return closedir(dir), it->first; - } - return closedir(dir), ""; -} - -std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { - std::string content; - std::string errorsPath = "var/www/html/errors/"; - - std::ifstream file; - switch (status) { - case FORBIDDEN: - file.open((errorsPath + std::string("403.html")).c_str()); - break; - case NOT_FOUND: - file.open((errorsPath + std::string("404.html")).c_str()); - break; - case METHOD_NOT_ALLOWED: - file.open((errorsPath + std::string("405.html")).c_str()); - break; - case INTERNAL_SERVER_ERROR: - file.open((errorsPath + std::string("500.html")).c_str()); - break; - default: - content = "Under control"; - } - - if (file.is_open()) { - std::string line; - - while (file) { - std::getline(file, line); - content.append(line); - } - } - else - std::cout << "File doesn't opened" << std::endl; - - return content; -} - -std::string ResponseUtils::generateAutoIndex(std::string filepath) { - std::stringstream body; - DIR *dir; - struct dirent *ent; - bool first = true; - - body << "" << filepath << "
"; - - dir = opendir(filepath.c_str()); - if (!dir) - return ""; - while ((ent = readdir(dir))) { - if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) - continue ; - if (!first) - body << "
"; - body << "" - << std::endl; - first = false; - } - closedir(dir); - if (first) - body << "

This directory is empty

"; - body << ""; - return body.str(); -} - -bool ResponseUtils::deleteFile(const std::string& path) -{ - if (remove(path.c_str()) != 0) { - std::cerr << "Error deleting file: " << path << std::endl; - return false; - } - return true; -} - -bool ResponseUtils::deleteFolder(const std::string& path) -{ - DIR* dir = opendir(path.c_str()); - - if (!dir) { - std::cout << COL_MAGENTA << "Can't open directory in 'deleteFolder'" << END_COL << std::endl; - return false; - } - struct dirent* entry; - while ((entry = readdir(dir)) != NULL) - { - if (std::string(entry->d_name) == "." || std::string(entry->d_name) == "..") - continue; - std::string filePath = path + "/" + entry->d_name; - if (entry->d_type == DT_DIR) - deleteFolder(filePath); - else - deleteFile(filePath); - } - closedir(dir); - if (remove(path.c_str()) != 0) { - std::cerr << "Error deleting directory: " << path << std::endl; - return (false); - } - return true; -} - -std::string ResponseUtils::getAllowHeader(std::map allowed) { - std::string ret; - bool first = true; - std::map::iterator it; - - for (it = allowed.begin(); it != allowed.end(); it++) { - if (!first) - ret.append(", "); - ret.append(it->first); - first = false; - } - return ret; -} diff --git a/websites/upload/index.html b/websites/upload/index.html index 00a1a7d..b615a2d 100644 --- a/websites/upload/index.html +++ b/websites/upload/index.html @@ -1,5 +1,6 @@ + @@ -12,6 +13,7 @@ justify-content: center; align-items: center; } + .main-form { background-color: bisque; width: 30%; @@ -25,6 +27,7 @@ } +
@@ -35,9 +38,9 @@ + \ No newline at end of file From e0db94cbca84d1c93c198c6ae30722107030f372 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Wed, 21 May 2025 13:59:33 +0100 Subject: [PATCH 48/66] upload files in the right place --- headers/ClientData.hpp | 1 - srcs/models/Upload.cpp | 44 +++++++++++++++++++++++------------------- 2 files changed, 24 insertions(+), 21 deletions(-) diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index c971c4d..5541497 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -37,7 +37,6 @@ struct ClientData { std::string boundary; std::string error; std::string tmpFolder; - std::string tmpFileName; std::string fileName; requestType type; requestProgress progress; diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 07bbae9..163a453 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -37,7 +37,7 @@ void closeFiles(ClientData &client) for (it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it) close(it->second); - client.uploadFd.clear(); + // client.uploadFd.clear(); } //! set client.currentFileFd to -1 @@ -47,19 +47,20 @@ void closeFiles(ClientData &client) void processMultipartUpload(ClientData &client) { ssize_t written; + std::string tmpFileName; std::cout << COL_RED << "uploading..." << END_COL << std::endl; while(!client.request.empty()) { - if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ + if (client.uploadFd.find(client.fileName) == client.uploadFd.end()){ size_t headers = client.request.find("\r\n\r\n"); if (headers != std::string::npos) { client.fileName = getFileName(client.request); if (!client.fileName.empty()) { - client.tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) - close(client.uploadFd[client.tmpFileName]); - client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); - if (client.uploadFd[client.tmpFileName] == -1){ + tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder + if (client.uploadFd.find(client.fileName) != client.uploadFd.end()) + close(client.uploadFd[client.fileName]); + client.uploadFd[client.fileName] = open(tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); + if (client.uploadFd[client.fileName] == -1){ closeFiles(client); break; //! close all the files } @@ -75,8 +76,8 @@ void processMultipartUpload(ClientData &client) size_t boundaryPos = client.request.find("--" + client.boundary + "\r\n"); size_t endBoundary; if (boundaryPos != std::string::npos) { - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()){ - written = write(client.uploadFd[client.tmpFileName], + if (client.uploadFd.find(client.fileName) != client.uploadFd.end()){ + written = write(client.uploadFd[client.fileName], client.request.c_str(), boundaryPos > 2 ? boundaryPos - 2: 0); if (written == -1){ @@ -85,30 +86,33 @@ void processMultipartUpload(ClientData &client) } } client.request.erase(0, boundaryPos + client.boundary.size() + 4); - client.tmpFileName.clear(); + client.fileName.clear(); continue; } else if((endBoundary = client.request.find("--" + client.boundary + "--\r\n")) != std::string::npos){ - written = write(client.uploadFd[client.tmpFileName], + written = write(client.uploadFd[client.fileName], client.request.c_str(), endBoundary > 2 ? endBoundary - 2: 0); + for(std::map::iterator it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it){ + tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + it->first; + std::cout << COL_GREEN << "tmpfile: "<< tmpFileName << END_COL << std::endl; + std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + it->first << END_COL << std::endl; + std::rename(tmpFileName.c_str(), (client.server->getUploadsPath() + it->first).c_str()); //! handle if it failed + std::remove(tmpFileName.c_str()); + std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; + } client.request.clear(); closeFiles(client); - std::cout << COL_GREEN << "tmpfile: "<< client.tmpFileName.c_str() << END_COL << std::endl; - std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + client.fileName << END_COL << std::endl; - std::rename(client.tmpFileName.c_str(), (client.server->getUploadsPath() + client.fileName).c_str()); //! handle if it failed - std::remove(client.tmpFileName.c_str()); - client.tmpFileName.clear(); - std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; - + client.fileName.clear(); + client.uploadFd.clear(); //! REQUEST_COMPLETE } else return; } - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) { - written = write(client.uploadFd[client.tmpFileName], + if (client.uploadFd.find(client.fileName) != client.uploadFd.end()) { + written = write(client.uploadFd[client.fileName], client.request.c_str(), client.request.size()); if (written == -1){ From 8968ad615d6ca5e528bb8812b0320009b7dff6e9 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 21 May 2025 15:50:42 +0100 Subject: [PATCH 49/66] fsanitize --- Makefile | 2 +- srcs/models/Response.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index ccb1f77..e70b1a6 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ # -fsanitize=address +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -fsanitize=address NAME=webserv diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index d02a2bc..5afc0fb 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/21 12:51:08 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 15:50:03 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ From 2e11e4bcf8789c4c25c70cbbd7c20c8530533ddd Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Wed, 21 May 2025 19:44:27 +0100 Subject: [PATCH 50/66] comments cleanned --- configs/config.conf | 27 +-------------------------- srcs/models/Server.cpp | 2 +- srcs/models/WebservHandler.cpp | 5 +---- 3 files changed, 3 insertions(+), 31 deletions(-) diff --git a/configs/config.conf b/configs/config.conf index 4833ce9..8d50a20 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,7 +5,7 @@ # required host = "127.0.0.1" # required -port = "8080,7070" +port = "8080,7070,2000" # required server_name = "myserver.local" # optional @@ -42,29 +42,4 @@ port = "9000" server_name = "second.local" location_root = "var/www/html" -############################################################################### -# Server 3 -############################################################################### -[server.third] -host = "0.0.0.0" -port = "8081" -server_name = "third.local" -location_root = "websites/third" - -############################################################################### -# Server 4 -############################################################################### -[server.fourth] -host = "127.0.0.1" -port = "7071" -server_name = "fourth.local" -location_root = "websites/fourth" -############################################################################### -# Server 5 -############################################################################### -[server.fifth] -host = "0.0.0.0" -port = "6060" -server_name = "fifth.local" -location_root = "websites/fifth" \ No newline at end of file diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index d2c798e..ff955c4 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -317,7 +317,7 @@ bool Server::isValidServer(void) std::cout << "Auto Index: " << (this->autoIndex ? "true" : "false") << std::endl; std::cout << "Upload path: " << this->uploadsPath << std::endl; std::cout << " ********\n"; - if (this->rootPath.empty() || this->port == INT_MAX || this->host.empty()) { + if (this->rootPath.empty() || (this->port == INT_MAX || !this->port) || this->host.empty()) { std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; return (false); } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 4c90ce2..7576723 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/21 12:36:10 by ochouati ### ########.fr */ +/* Updated: 2025/05/21 19:43:57 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -82,7 +82,6 @@ bool WebservHandler::isHeaderComplete(ClientData& client) client.bodyReded = client.request.size(); client.progress = WORKING; this->setMethod(client); - std::cout << COL_RED << "Headers: \n" << client.headers << END_COL << std::endl; return (true); } return (false); @@ -100,7 +99,6 @@ bool WebservHandler::isRequestComplete(ClientData& client) else if (client.type == MULTIPART_FORM && client.contentLen <= static_cast(client.bodyReded)) { client.isRequestComplete = true; - std::cout << COL_BLUE << "Multipart form data received" << END_COL << std::endl; return ((client.progress = COLLECTED), true); } else if (client.contentLen >= 0 && client.request.size() >= static_cast(client.contentLen)) @@ -116,7 +114,6 @@ bool WebservHandler::isRequestValid(ClientData& client) if (client.bodyReded > static_cast(max)) { HttpErrors::httpResponse413(client); - std::cout << COL_RED << "Request body size exceeds server limit" << END_COL << std::endl; return (false); } return (true); From a711cdda82d9379e4e21553896d7d55a8a4910b1 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Wed, 21 May 2025 19:59:06 +0100 Subject: [PATCH 51/66] adding multiple CGIs but not tested --- headers/Request.hpp | 2 +- srcs/models/Cgi.cpp | 7 +++++++ var/www/html/print_env.py | 8 ++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 var/www/html/print_env.py diff --git a/headers/Request.hpp b/headers/Request.hpp index 6f1ebb5..69b73ad 100644 --- a/headers/Request.hpp +++ b/headers/Request.hpp @@ -12,8 +12,8 @@ class Request { std::vector vQuery; std::map headerPairs; std::vector vEnv; - ClientData& client; public: + ClientData& client; Request(const std::string& requestString, ClientData& c); ~Request(); diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 008e03f..269297f 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -102,6 +102,13 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) interpreterPath = locateExecutable(binaryPaths, "php"); else if (scriptExtension == ".py") interpreterPath = locateExecutable(binaryPaths, "python3"); + // Multiple CGI Not tested + else { + interpreterPath = request.client.server->getCGI(scriptExtension); + if(!interpreterPath.empty()){ + return ""; //! is this return value valid ? + } + } int pipeFd[2]; if (pipe(pipeFd) < 0) diff --git a/var/www/html/print_env.py b/var/www/html/print_env.py new file mode 100644 index 0000000..d9bcf83 --- /dev/null +++ b/var/www/html/print_env.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python3 +import os + +# Tell the browser this is plain text (not HTML) + +# Print all env variables, one per line +for key, value in os.environ.items(): + print(f"{key}: {value}
") # \n adds a newline \ No newline at end of file From 24a138f9aebcfa92cdabf95c0a7d760cc7aa4eb0 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Thu, 22 May 2025 14:38:53 +0100 Subject: [PATCH 52/66] more comment cleanned --- configs/config.conf | 10 ++++++++ headers/Types.hpp | 5 ++-- headers/Webserv.hpp | 3 ++- srcs/models/Server.cpp | 13 +--------- srcs/models/Webserv.cpp | 41 ++++++++++++++++-------------- srcs/parsing/config/readConfig.cpp | 3 --- websites/simple/index.html | 13 ++++++++++ 7 files changed, 50 insertions(+), 38 deletions(-) create mode 100644 websites/simple/index.html diff --git a/configs/config.conf b/configs/config.conf index 8d50a20..70443b7 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -43,3 +43,13 @@ server_name = "second.local" location_root = "var/www/html" +############################################################################### +# Server 3 +############################################################################### +[server.second] +host = "0.0.0.0" +port = "9999" +server_name = "second.local" +location_root = "websites/simple/index.html" + + diff --git a/headers/Types.hpp b/headers/Types.hpp index 6b29312..4461532 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -47,15 +47,14 @@ #define SO_NOSIGPIPE 0x1022 #endif -#define LISTEN_BACKLOG 1024 -// #define DEFAULT_ROOT_PATH "./website" +#define LISTEN_BACKLOG 2048 #define BODY_TEMP_PATH "./tmp/path" # define RUNNING 1 # define POLL_TIMEOUT 50 # define END_OF_HEADERS "\r\n\r\n" -# define READ_SIZE 8192 +# define READ_SIZE 4096 # define URL_MAX_SIZE 2048 # define CHUNCK_SIZE 4096 diff --git a/headers/Webserv.hpp b/headers/Webserv.hpp index 5b6c19e..7f94eb0 100644 --- a/headers/Webserv.hpp +++ b/headers/Webserv.hpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 16:49:53 by ochouati #+# #+# */ -/* Updated: 2025/05/14 13:07:06 by ochouati ### ########.fr */ +/* Updated: 2025/05/22 12:20:23 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -20,6 +20,7 @@ class Webserv : public WebservHandler { private: int _nbrEvents; void _init(); + void _loop(); bool _isRequestComplete(ClientData& client); readConfig *_config; std::vector _envs; diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index ff955c4..f900fe4 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -254,7 +254,6 @@ void Server::initServer(void) this->ftBind(); this->ftListen(); this->setNonBlocking(this->serverSocket); - std::cout << "Path: " << this->rootPath << " " << (this->rootPath.empty() ? "Empty" : "") << std::endl; } void Server::ftSocket(void) @@ -286,7 +285,7 @@ void Server::ftBind(void) std::memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(this->port); - std::cout << "Host: " << COL_GREEN << this->host << END_COL " Port: " << COL_YELLOW << this->port << END_COL << std::endl; + std::cout << "Listen on Host: " << COL_GREEN << this->host << END_COL " Port: " << COL_YELLOW << this->port << END_COL << std::endl; addr.sin_addr.s_addr = inet_addr(this->host.c_str()); if ((this->serverBind = bind(this->serverSocket, (struct sockaddr *)&addr, sizeof(addr))) < 0) throw std::runtime_error("Bind failed 3"); @@ -307,16 +306,6 @@ void Server::setNonBlocking(int fd) bool Server::isValidServer(void) { - std::cout << "Server: " << this->serverName << std::endl; - std::cout << "Host: " << this->host << std::endl; - std::cout << "Port: " << this->port << std::endl; - std::cout << "Root: " << this->rootPath << std::endl; - std::cout << "Limit Client Body Size: " << this->limitClientBodySize << std::endl; - std::cout << "Timeout: " << this->timeout << std::endl; - std::cout << "Enable Uploads: " << (this->enableUploads ? "true" : "false") << std::endl; - std::cout << "Auto Index: " << (this->autoIndex ? "true" : "false") << std::endl; - std::cout << "Upload path: " << this->uploadsPath << std::endl; - std::cout << " ********\n"; if (this->rootPath.empty() || (this->port == INT_MAX || !this->port) || this->host.empty()) { std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; return (false); diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index 638ad80..5b9eaef 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/19 16:25:35 by ochouati ### ########.fr */ +/* Updated: 2025/05/22 13:18:16 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -46,28 +46,34 @@ void Webserv::_init() { } } +void Webserv::_loop() { + +} + void Webserv::run() { this->_init(); while (RUNNING) { if ((this->_nbrEvents = poll(_pollfds.data(), _pollfds.size(), POLL_TIMEOUT)) < 0) continue; for (size_t i = 0; i < _pollfds.size() && this->_nbrEvents > 0; ++i) { - if (_pollfds[i].revents & (POLLERR | POLLHUP)) { - if (!isServerSocket(_pollfds[i].fd)) { - std::cerr << COL_RED << "Error in Socket (POLLERR | POLLHUP): " << _pollfds[i].fd << END_COL << std::endl; - this->_closeClient(_pollfds[i].fd); + try { + if (_pollfds[i].revents & (POLLERR | POLLHUP)) { + if (!isServerSocket(_pollfds[i].fd)) + this->_closeClient(_pollfds[i].fd); + --this->_nbrEvents; + continue; } - --this->_nbrEvents; - continue; - } - if (_pollfds[i].revents & POLLIN) { - --this->_nbrEvents; - if (isServerSocket(_pollfds[i].fd)) - this->acceptNewConnection(_pollfds[i].fd); - else - this->handleClientRequest(_pollfds[i].fd); + if (_pollfds[i].revents & POLLIN) { + --this->_nbrEvents; + if (isServerSocket(_pollfds[i].fd)) + this->acceptNewConnection(_pollfds[i].fd); + else + this->handleClientRequest(_pollfds[i].fd); + } + if (_pollfds[i].revents & POLLOUT) + this->sendResponse(_pollfds[i].fd); + } catch (std::exception& e) { + (void)e; } - if (_pollfds[i].revents & POLLOUT) - this->sendResponse(_pollfds[i].fd); } this->timeoutHandler(); } @@ -89,8 +95,6 @@ bool Webserv::_isRequestComplete(ClientData& client) { this->setRequestType(client); this->setContentLength(client); this->setBoundary(client); - //! Validate request - //! ... return (this->isRequestComplete(client)); } @@ -110,7 +114,6 @@ void Webserv::acceptNewConnection(int fd) struct sockaddr_in clientAddress; socklen_t clientAddressSize = sizeof(clientAddress); int clientFd = accept(fd, (struct sockaddr *)&clientAddress, &clientAddressSize); - // std::cout << COL_GREEN << "New client, fd: " << clientFd << END_COL << std::endl; //! remove this if (clientFd < 0) //? Should really exit here? throw std::runtime_error("Error while accepting new connection"); Server::setNonBlocking(clientFd); diff --git a/srcs/parsing/config/readConfig.cpp b/srcs/parsing/config/readConfig.cpp index 7cb764c..16f36fa 100644 --- a/srcs/parsing/config/readConfig.cpp +++ b/srcs/parsing/config/readConfig.cpp @@ -98,19 +98,16 @@ void readConfig::readFile(char *argFile) void readConfig::seperateServers(void) { - std::cout << "Seperating server: __ " << this->servers.size() << std::endl; for (size_t i = 0; i < this->servers.size(); ++i) { for (size_t j = 1; j < this->servers[i].getPorts().size(); j++) { Server tmp = Server(this->servers[i], this->servers[i].getPorts()[j]); this->servers.push_back(tmp); } } - std::cout << "Seperated servers:: " << this->servers.size() << std::endl; for (size_t i = 0; i < this->servers.size();) { if (!this->servers[i].isValidServer()) { this->servers.erase(this->servers.begin() + i); } else ++i; } - std::cout << "Seperated servers:: " << this->servers.size() << std::endl; } diff --git a/websites/simple/index.html b/websites/simple/index.html new file mode 100644 index 0000000..259b276 --- /dev/null +++ b/websites/simple/index.html @@ -0,0 +1,13 @@ + + + + + + Simple + + +
+ Simple Example
+
+ + \ No newline at end of file From ffa20cd1f8bb40c60e5e7aba3d979acbb712b2da Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Sat, 24 May 2025 10:58:40 +0100 Subject: [PATCH 53/66] fix query and remove system env --- headers/Cgi.hpp | 2 +- srcs/models/Cgi.cpp | 20 ++++++-------------- srcs/models/Request.cpp | 7 +++++-- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/headers/Cgi.hpp b/headers/Cgi.hpp index 8ff5808..e26ba86 100644 --- a/headers/Cgi.hpp +++ b/headers/Cgi.hpp @@ -15,7 +15,7 @@ class Cgi { private: - char **createEnvironmentVariables(Request &request, char **systemEnv); + char **createEnvironmentVariables(Request &request); std::vector extractBinaryPaths(char **environmentVariables); std::string locateExecutable(const std::vector &searchPaths, const std::string &executableName); diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 269297f..db6fc82 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -26,25 +26,17 @@ Cgi::Cgi() {} Cgi::~Cgi() {} -char **Cgi::createEnvironmentVariables(Request &request, char **systemEnv) +char **Cgi::createEnvironmentVariables(Request &request) { - size_t systemEnvCount = 0; - while (systemEnv[systemEnvCount]) - ++systemEnvCount; - - char **envVariables = new char *[systemEnvCount + request.getEnvSize() + 1]; // free this size_t index = 0; + char **envVariables = new char *[request.getEnvSize() + 1]; - while (systemEnv[index]) - { - envVariables[index] = strdup(systemEnv[index]); + while (index < request.getEnvSize()){ + envVariables[index] = strdup(request.getEnv(index).c_str()); ++index; } - for (size_t j = 0; !request.getEnv(j).empty(); ++j) - envVariables[index++] = strdup(request.getEnv(j).c_str()); - - envVariables[index - 1] = NULL; + envVariables[index] = NULL; return envVariables; } @@ -87,7 +79,7 @@ std::string Cgi::locateExecutable(const std::vector &searchPaths, c std::string Cgi::executeCgiScript(Request &request, char **systemEnv) { request.convertToEnv(); - char **envVariables = createEnvironmentVariables(request, systemEnv); + char **envVariables = createEnvironmentVariables(request); std::vector binaryPaths = extractBinaryPaths(systemEnv); std::string scriptExtension; std::string interpreterPath; diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index 9c94ef5..b16ad62 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -36,7 +36,7 @@ Request::Request(const std::string &requestString, ClientData& c) :client(c) if (this->path.find_first_of("?") != std::string::npos) { - this->query = this->path.substr(this->path.find_first_of("?")); + this->query = this->path.substr(this->path.find_first_of("?") + 1); size_t queryStart = this->path.find_first_of("?") + 1; while (true) { @@ -104,10 +104,13 @@ void Request::convertToEnv(void) if (!headerPairs["Host"].empty()) vEnv.push_back("HTTP_HOST="+ headerPairs["Host"]); + // vEnv.push_back(("DOCUMENT_ROOT="+ client.server->getRootPath())); + vEnv.push_back("DOCUMENT_ROOT=/Users/achakkaf/Documents/webserv/var/www/html"); + if (!headerPairs["User-Agent"].empty()) vEnv.push_back("HTTP_USER_AGENT="+ headerPairs["User-Agent"]); if (!headerPairs["Cookie"].empty()) - vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); // is this correct HTTP_COOKIE=session=0c4982e7b7ef3dca?? + vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); // is this correct HTTP_COOKIE=session=0c4982e7b7ef3dca ?? if (!headerPairs["Authorization"].empty()) vEnv.push_back("HTTP_AUTHORIZATION="+ headerPairs["Authorization"]); printMap(vEnv); // remove this From 0134edd83bde32acf01e893298547938be265ab5 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Sat, 24 May 2025 12:56:18 +0100 Subject: [PATCH 54/66] otm stop point --- configs/config.conf | 8 +-- srcs/models/Cgi.cpp | 12 ++++- srcs/models/Request.cpp | 6 +-- srcs/models/Server.cpp | 4 +- var/www/html/magic/index.html | 37 +++++++++++++ var/www/html/magic/style.css | 50 ++++++++++++++++++ .../www/html}/main/img/favicon.ico | Bin .../www/html}/main/img/medium_achakkaf.jpg | Bin .../www/html}/main/img/medium_mboujama.jpg | Bin .../www/html}/main/img/medium_ochouati.jpg | Bin {websites => var/www/html}/main/index.html | 0 {websites => var/www/html}/main/script.js | 0 var/www/html/main/scripts/1337.php | 24 +++++++++ .../www/html}/main/scripts/particles.min.js | 0 var/www/html/main/scripts/ss.sh | 16 ++++++ {websites => var/www/html}/main/style.css | 0 {websites => var/www/html}/main/ts.php | 0 17 files changed, 146 insertions(+), 11 deletions(-) create mode 100644 var/www/html/magic/index.html create mode 100644 var/www/html/magic/style.css rename {websites => var/www/html}/main/img/favicon.ico (100%) rename {websites => var/www/html}/main/img/medium_achakkaf.jpg (100%) rename {websites => var/www/html}/main/img/medium_mboujama.jpg (100%) rename {websites => var/www/html}/main/img/medium_ochouati.jpg (100%) rename {websites => var/www/html}/main/index.html (100%) rename {websites => var/www/html}/main/script.js (100%) create mode 100644 var/www/html/main/scripts/1337.php rename {websites => var/www/html}/main/scripts/particles.min.js (100%) create mode 100644 var/www/html/main/scripts/ss.sh rename {websites => var/www/html}/main/style.css (100%) rename {websites => var/www/html}/main/ts.php (100%) diff --git a/configs/config.conf b/configs/config.conf index 7e4bfe5..16174d8 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -19,13 +19,13 @@ redirects = "/tasks/index.html:/new/index.html,/tasks/index2.html:/new/index2.ht client_body_temp_path= "var/tmp" # location_root required -location_root = "websites/main" +location_root = "var/www/html/main" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" -upload_store = "websites/main/uploads/" -cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" +upload_store = "var/www/html/main/uploads/" +cgi = "/bin/bash:.sh" ############################################################################### @@ -35,7 +35,7 @@ cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" host = "127.0.0.1" port = "9000" server_name = "second.local" -location_root = "var/www/html" +location_root = "var/www/html/magic" ############################################################################### diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 269297f..04ed9b2 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/07 19:52:42 by mboujama #+# #+# */ -/* Updated: 2025/05/14 19:08:39 by ochouati ### ########.fr */ +/* Updated: 2025/05/24 11:23:10 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -86,8 +86,15 @@ std::string Cgi::locateExecutable(const std::vector &searchPaths, c std::string Cgi::executeCgiScript(Request &request, char **systemEnv) { + std::cout << COL_YELLOW << "Executing CGI script: " << std::endl; request.convertToEnv(); char **envVariables = createEnvironmentVariables(request, systemEnv); + int i = 0; + while (envVariables[i]) + { + std::cout << envVariables[i] << std::endl; + ++i; + } std::vector binaryPaths = extractBinaryPaths(systemEnv); std::string scriptExtension; std::string interpreterPath; @@ -98,6 +105,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) scriptExtension = request.getPath().substr(extensionPos); else scriptExtension = ""; + std::cout << COL_RED << "Error: Unsupported CGI script extension: " << scriptExtension << END_COL << std::endl; if (scriptExtension == ".php") interpreterPath = locateExecutable(binaryPaths, "php"); else if (scriptExtension == ".py") @@ -121,7 +129,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) dup2(pipeFd[1], STDERR_FILENO); close(pipeFd[1]); - std::string fullpath = "var/www/html" + request.getPath(); + std::string fullpath = request.client.server->getRootPath() + request.getPath(); char *arguments[3] = {strdup(interpreterPath.c_str()), strdup(fullpath.c_str()), NULL}; execve(arguments[0], arguments, envVariables); std::cerr << "Error: execve failed\n"; diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index 9c94ef5..f41dcf2 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* Request.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: mboujama +#+ +:+ +#+ */ +/* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/20 12:43:53 by mboujama #+# #+# */ -/* Updated: 2025/05/22 09:21:18 by mboujama ### ########.fr */ +/* Updated: 2025/05/23 18:35:29 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -110,7 +110,7 @@ void Request::convertToEnv(void) vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); // is this correct HTTP_COOKIE=session=0c4982e7b7ef3dca?? if (!headerPairs["Authorization"].empty()) vEnv.push_back("HTTP_AUTHORIZATION="+ headerPairs["Authorization"]); - printMap(vEnv); // remove this + // printMap(vEnv); // remove this } std::string Request::getEnv(size_t i) const diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index f900fe4..6c4b79c 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -17,7 +17,7 @@ -Server::Server(void) //! i think I have to remove this +Server::Server(void) { } @@ -29,7 +29,7 @@ Server::~Server(void) close(this->serverBind); } -Server::Server(const Server& srv, uint32_t port) //! +Server::Server(const Server& srv, uint32_t port) { this->rootPath = srv.rootPath; this->host = srv.host; diff --git a/var/www/html/magic/index.html b/var/www/html/magic/index.html new file mode 100644 index 0000000..d947713 --- /dev/null +++ b/var/www/html/magic/index.html @@ -0,0 +1,37 @@ + + + + + + + Magic | Webserv + + +
+

Webserv

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + \ No newline at end of file diff --git a/var/www/html/magic/style.css b/var/www/html/magic/style.css new file mode 100644 index 0000000..e49f358 --- /dev/null +++ b/var/www/html/magic/style.css @@ -0,0 +1,50 @@ + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + background: #000; + overflow: hidden; +} + +.container { + position: absolute; + top: 20%; + height: 90%; + display: flex; + justify-content: center; + align-items: center; +} + +.circle { + position: absolute; + background: transparent; + width: calc(var(--i) * 2.5vmin); + aspect-ratio: 1; + border-radius: 50%; + border: 3px solid rgb(0, 255, 13); + transform-style: preserve-3d; + transform: rotateX(70deg) translateZ(50px); + animation: animate 3s ease-in-out calc(var(--i) * 0.08s) infinite; + box-shadow: 0 0 15px rgb(124, 124, 124), inset 0 0 15px rgb(124, 124, 124); +} + +@keyframes animate { + 0%, + 100% { + transform: rotateX(70deg) translateZ(50px) translateY(0); + filter: hue-rotate(0); + } + 50% { + transform: rotateX(70deg) translateZ(50px) translateY(-50vmin); + filter: hue-rotate(360deg); + } +} + diff --git a/websites/main/img/favicon.ico b/var/www/html/main/img/favicon.ico similarity index 100% rename from websites/main/img/favicon.ico rename to var/www/html/main/img/favicon.ico diff --git a/websites/main/img/medium_achakkaf.jpg b/var/www/html/main/img/medium_achakkaf.jpg similarity index 100% rename from websites/main/img/medium_achakkaf.jpg rename to var/www/html/main/img/medium_achakkaf.jpg diff --git a/websites/main/img/medium_mboujama.jpg b/var/www/html/main/img/medium_mboujama.jpg similarity index 100% rename from websites/main/img/medium_mboujama.jpg rename to var/www/html/main/img/medium_mboujama.jpg diff --git a/websites/main/img/medium_ochouati.jpg b/var/www/html/main/img/medium_ochouati.jpg similarity index 100% rename from websites/main/img/medium_ochouati.jpg rename to var/www/html/main/img/medium_ochouati.jpg diff --git a/websites/main/index.html b/var/www/html/main/index.html similarity index 100% rename from websites/main/index.html rename to var/www/html/main/index.html diff --git a/websites/main/script.js b/var/www/html/main/script.js similarity index 100% rename from websites/main/script.js rename to var/www/html/main/script.js diff --git a/var/www/html/main/scripts/1337.php b/var/www/html/main/scripts/1337.php new file mode 100644 index 0000000..a00e0ea --- /dev/null +++ b/var/www/html/main/scripts/1337.php @@ -0,0 +1,24 @@ + + + + + + PHP | 1337 | Webserv + + +
+ $x is impair"; + echo "

$y is pair

"; + $random_number = rand(1, 100); + if ($random_number % 2 == 0) { + echo "

$y win beceause the number is: $random_number, So it's pair

"; + } else { + echo "

$x win beceause the number is: $random_number, So it's impair

"; + } + ?> +
+ + \ No newline at end of file diff --git a/websites/main/scripts/particles.min.js b/var/www/html/main/scripts/particles.min.js similarity index 100% rename from websites/main/scripts/particles.min.js rename to var/www/html/main/scripts/particles.min.js diff --git a/var/www/html/main/scripts/ss.sh b/var/www/html/main/scripts/ss.sh new file mode 100644 index 0000000..35b758b --- /dev/null +++ b/var/www/html/main/scripts/ss.sh @@ -0,0 +1,16 @@ +#!/bin/bash + + +cat < + + + + + SS + + +

Welcome to SS

+ + +EOF diff --git a/websites/main/style.css b/var/www/html/main/style.css similarity index 100% rename from websites/main/style.css rename to var/www/html/main/style.css diff --git a/websites/main/ts.php b/var/www/html/main/ts.php similarity index 100% rename from websites/main/ts.php rename to var/www/html/main/ts.php From 8b6925c4df424a98f2e93c3a3e660f1247f91652 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Sat, 24 May 2025 13:27:21 +0100 Subject: [PATCH 55/66] redirected the body to stdin of cgi --- srcs/models/Cgi.cpp | 59 +++++++++++++++++++++++++++++++--------- srcs/models/Request.cpp | 8 ------ srcs/models/Response.cpp | 6 ++++ 3 files changed, 52 insertions(+), 21 deletions(-) diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index db6fc82..1dee8bf 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -12,6 +12,7 @@ #include "../../headers/Cgi.hpp" #include //! +#include // SCRIPT_FILENAME – hold the executeble file path // REQUEST_METHOD – hold the method name @@ -97,43 +98,75 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) // Multiple CGI Not tested else { interpreterPath = request.client.server->getCGI(scriptExtension); - if(!interpreterPath.empty()){ + if(interpreterPath.empty()){ return ""; //! is this return value valid ? } } - int pipeFd[2]; - if (pipe(pipeFd) < 0) - std::cerr << "Error: pipe creation failed\n"; + int stdoutPipe[2], stdinPipe[2]; + if (pipe(stdoutPipe) < 0) + std::cerr << COL_RED << "Error: pipe stdout creation failed\n" << END_COL; + if (pipe(stdinPipe) < 0){ + std::cerr << COL_RED << "Error: pipe stdin creation failed\n" << END_COL; + close(stdoutPipe[0]); + close(stdoutPipe[1]); + } pid_t processId = fork(); if (processId == 0) { - close(pipeFd[0]); - dup2(pipeFd[1], STDOUT_FILENO); - dup2(pipeFd[1], STDERR_FILENO); - close(pipeFd[1]); + dup2(stdinPipe[0], STDIN_FILENO); + + dup2(stdoutPipe[1], STDOUT_FILENO); + dup2(stdoutPipe[1], STDERR_FILENO); + + close(stdoutPipe[0]); + close(stdoutPipe[1]); + close(stdinPipe[0]); + close(stdinPipe[1]); - std::string fullpath = "var/www/html" + request.getPath(); + std::string fullpath = request.client.server->getRootPath() + request.getPath(); char *arguments[3] = {strdup(interpreterPath.c_str()), strdup(fullpath.c_str()), NULL}; execve(arguments[0], arguments, envVariables); std::cerr << "Error: execve failed\n"; } else if (processId > 0) { - close(pipeFd[1]); + close(stdinPipe[0]); + close(stdoutPipe[1]); + + if (request.getMethod() == "POST" && !request.getBody().empty()) { + std::string postData = request.getBody(); + ssize_t bytesWritten = write(stdinPipe[1], postData.c_str(), postData.length()); + if (bytesWritten < 0) { + std::cerr << COL_RED << "Error: Failed to write POST data to CGI\n" << END_COL; + } + } + + close(stdinPipe[1]); + char outputBuffer[1024]; ssize_t bytesRead; - while ((bytesRead = read(pipeFd[0], outputBuffer, sizeof(outputBuffer) - 1)) > 0) + while ((bytesRead = read(stdoutPipe[0], outputBuffer, sizeof(outputBuffer) - 1)) > 0) { outputBuffer[bytesRead] = '\0'; file += outputBuffer; } - close(pipeFd[0]); + + close(stdoutPipe[0]); waitpid(processId, NULL, 0); // delete temp files in temp folder } else - exit(EXIT_FAILURE); + { + close(stdoutPipe[0]); + close(stdoutPipe[1]); + close(stdinPipe[0]); + close(stdinPipe[1]); + for(size_t i = 0; envVariables[i]; ++i) + delete[] envVariables[i]; + delete[] envVariables; + return ""; + } // !! waaaaaa abadelaziz for(size_t i = 0; envVariables[i]; ++i) delete envVariables[i]; diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index b16ad62..162f83e 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -74,13 +74,6 @@ Request::Request(const std::string &requestString, ClientData& c) :client(c) } -template -void printMap(T mp) { - for (typename T::iterator it = mp.begin(); it != mp.end(); ++it){ - std::cout << "->" << *it << std::endl; - } -} - void Request::convertToEnv(void) { vEnv.push_back("REQUEST_METHOD="+ method); @@ -113,7 +106,6 @@ void Request::convertToEnv(void) vEnv.push_back("HTTP_COOKIE="+ headerPairs["Cookie"]); // is this correct HTTP_COOKIE=session=0c4982e7b7ef3dca ?? if (!headerPairs["Authorization"].empty()) vEnv.push_back("HTTP_AUTHORIZATION="+ headerPairs["Authorization"]); - printMap(vEnv); // remove this } std::string Request::getEnv(size_t i) const diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index aa6bd0f..9e502c1 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -180,6 +180,12 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = FORBIDDEN; return; } + if (!path.substr(path.find_last_of('.')).compare(".py") + || !path.substr(path.find_last_of('.')).compare(".php")) { + std::cout << COL_GREEN << "Before cgi: " << END_COL << std::endl; + body = cgi->executeCgiScript(req, serverEnv); + std::cout << COL_GREEN << "After cgi: " << body << END_COL << std::endl; + } (void) req; wServ->enablePOLLOUT(client.fd); client.progress = READY; From c2a4d9f16c55d72b3822e3cbcb9711c86fd2e962 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Sat, 24 May 2025 15:40:29 +0100 Subject: [PATCH 56/66] remove \r from the end of values --- srcs/models/Cgi.cpp | 2 -- srcs/models/Request.cpp | 5 ++--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 1dee8bf..fb012d3 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -154,7 +154,6 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) close(stdoutPipe[0]); waitpid(processId, NULL, 0); - // delete temp files in temp folder } else { @@ -167,7 +166,6 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) delete[] envVariables; return ""; } - // !! waaaaaa abadelaziz for(size_t i = 0; envVariables[i]; ++i) delete envVariables[i]; delete[] envVariables; diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index 162f83e..36f67cf 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -66,11 +66,10 @@ Request::Request(const std::string &requestString, ClientData& c) :client(c) headerKey = requestString.substr(headerStart, headerKeyEnd - headerStart); size_t headerValueStart = requestString.find_first_not_of(": \t", headerKeyEnd); versionEnd = requestString.find_first_of("\n", headerValueStart); - headerValue = requestString.substr(headerValueStart, versionEnd - headerValueStart); + headerValue = requestString.substr(headerValueStart, versionEnd - headerValueStart - 1); this->headerPairs[headerKey] = headerValue; } - this->body = requestString.substr(versionEnd + 2, requestString.size() - versionEnd); - // this->convertToEnv(); + this->body = requestString.substr(versionEnd + 3, requestString.size() - versionEnd); } From b8d6bb36c42ff628190f3984649822cd58c2b8c9 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Sun, 25 May 2025 15:16:51 +0100 Subject: [PATCH 57/66] solve cookie issue --- configs/config.conf | 3 +- headers/Response.hpp | 5 +- headers/Types.hpp | 1 - length.cpp | 18 ++++ srcs/models/Cgi.cpp | 5 +- srcs/models/Response.cpp | 34 +++++--- srcs/models/ResponseUtils.cpp | 4 +- srcs/models/WebservHandler.cpp | 4 +- var/www/html/autoindex/folder3/Main.java | 5 ++ var/www/html/autoindex/folder3/README.md | 3 + var/www/html/cookie.php | 100 ++++++++++++++++++++++ var/www/html/cookie.py | 29 +++++++ var/www/html/setcookie.php | 36 ++++++++ websites/main/cookie.php | 104 +++++++++++++++++++++++ 14 files changed, 330 insertions(+), 21 deletions(-) create mode 100644 length.cpp create mode 100644 var/www/html/autoindex/folder3/README.md create mode 100644 var/www/html/cookie.php create mode 100644 var/www/html/cookie.py create mode 100644 var/www/html/setcookie.php create mode 100644 websites/main/cookie.php diff --git a/configs/config.conf b/configs/config.conf index 8d50a20..3db7576 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -24,7 +24,7 @@ error_page_404 = "errors/404.html" error_page_500 = "errors/500.html" # location_root required -location_root = "websites/main" +location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" @@ -41,5 +41,6 @@ host = "127.0.0.1" port = "9000" server_name = "second.local" location_root = "var/www/html" +allowed_methods = "POST,DELETE,GET" diff --git a/headers/Response.hpp b/headers/Response.hpp index d766677..2154eab 100644 --- a/headers/Response.hpp +++ b/headers/Response.hpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:11 by mboujama #+# #+# */ -/* Updated: 2025/05/15 14:01:57 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 13:29:04 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,6 +15,7 @@ # include "Types.hpp" #include "MimeTypes.hpp" #include "Cgi.hpp" +#include class Response : public MimeTypes { @@ -31,6 +32,7 @@ class Response : public MimeTypes std::string body; std::string date; size_t contentLength; + bool isCgi; void handleGet(struct ClientData &client, Request &req, std::string &path); void handlePost(struct ClientData &client, Request &req, std::string &path); @@ -48,4 +50,5 @@ class Response : public MimeTypes std::map getHeaders() const; std::string getHeadersString() const; size_t getContentlength() const; + size_t getBodyLength(); }; diff --git a/headers/Types.hpp b/headers/Types.hpp index 97170c3..27356e9 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -89,7 +89,6 @@ enum RESPONSE_CODE { OK = 200, CGI, CREATED = 201, - CONFLICT = 409, NOCONTENT = 204, INTERNAL_SERVER_ERROR = 500 }; diff --git a/length.cpp b/length.cpp new file mode 100644 index 0000000..5f567a7 --- /dev/null +++ b/length.cpp @@ -0,0 +1,18 @@ +#include + +bool isCgi = true; +std::string body = "HTTP/1.1 200 OK\r\n" + "\r\n" + ""; + +size_t getBodyLength() { + if (isCgi) { + return body.length() - body.find("\r\n\r\n") - 4; + } + return body.length(); +} + +int main() { + std::cout << getBodyLength() << std::endl; + return 0; +} \ No newline at end of file diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 1dee8bf..66e209d 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -3,14 +3,15 @@ /* ::: :::::::: */ /* Cgi.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ +/* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/07 19:52:42 by mboujama #+# #+# */ -/* Updated: 2025/05/14 19:08:39 by ochouati ### ########.fr */ +/* Updated: 2025/05/24 13:31:52 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Cgi.hpp" +#include #include //! #include diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 9e502c1..3272e27 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/22 09:21:37 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 15:15:39 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -55,12 +55,22 @@ std::string Response::combineResponse(void) { std::map::iterator it; for (it = headers.begin(); it != headers.end(); it++) res << it->first << ": " << it->second << "\r\n"; - res << "\r\n" << body; + if (!isCgi) + res << "\r\n"; + res << body; return res.str(); } +size_t Response::getBodyLength() { + if (isCgi) + return body.length() - body.find("\n\n") - 4; + return body.length(); +} + + Response::Response(struct ClientData &client, Request &req) { cgi = new Cgi(); + isCgi = false; std::string full_path = client.server->getRootPath() + req.getPath(); http_version = req.getVersion(); @@ -91,7 +101,6 @@ Response::Response(struct ClientData &client, Request &req) { else if (req.getMethod() == "DELETE") handleDelete(client, req, full_path); - std::cout << "Before switch: " << status_code << std::endl; switch (status_code) { case CREATED: break ; @@ -123,7 +132,7 @@ Response::Response(struct ClientData &client, Request &req) { status_code = OK; status_text = "OK"; if (!body.empty()) - headers["Content-Length"] = ResponseUtils::toString(body.length()); + headers["Content-Length"] = ResponseUtils::toString(getBodyLength()); } } @@ -154,9 +163,10 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (isFile) { if (!index.empty()) path += index; - if (!path.substr(path.find_last_of('.')).compare(".py") - || !path.substr(path.find_last_of('.')).compare(".php")) { + std::string extension = path.substr(path.find_last_of('.')); + if (!extension.compare(".py") || !extension.compare(".php")) { body = cgi->executeCgiScript(req, serverEnv); + isCgi = true; } else { struct stat fileStat; @@ -180,13 +190,15 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = FORBIDDEN; return; } - if (!path.substr(path.find_last_of('.')).compare(".py") - || !path.substr(path.find_last_of('.')).compare(".php")) { - std::cout << COL_GREEN << "Before cgi: " << END_COL << std::endl; - body = cgi->executeCgiScript(req, serverEnv); - std::cout << COL_GREEN << "After cgi: " << body << END_COL << std::endl; + std::string extension = path.substr(path.find_last_of('.')); + if (!extension.compare(".py") || !extension.compare(".php")) { + body = cgi->executeCgiScript(req, serverEnv); + isCgi = true; } (void) req; + status_code = CREATED; + status_text = "Created"; + headers["Allow-Origin"] = "*"; wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index f440ee3..7013b8b 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/20 13:38:46 by mboujama ### ########.fr */ +/* Updated: 2025/05/24 16:59:38 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -138,7 +138,7 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { if (!first) body << "
"; body << "" << std::endl; first = false; } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 1f37c41..c22d3a6 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/22 09:22:26 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 15:14:59 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -149,9 +149,7 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.resp) return this->_closeClient(client.fd); if (!client.isHeadersSent) { - std::cout << "Before combine" << std::endl; std::string res = client.resp->combineResponse(); - std::cout << "Response = " << res << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; diff --git a/var/www/html/autoindex/folder3/Main.java b/var/www/html/autoindex/folder3/Main.java index e69de29..d95f0de 100644 --- a/var/www/html/autoindex/folder3/Main.java +++ b/var/www/html/autoindex/folder3/Main.java @@ -0,0 +1,5 @@ +class Main { + public static void main(String[] argv) { + System.out.println("Hello world!"); + } +} \ No newline at end of file diff --git a/var/www/html/autoindex/folder3/README.md b/var/www/html/autoindex/folder3/README.md new file mode 100644 index 0000000..d0a3966 --- /dev/null +++ b/var/www/html/autoindex/folder3/README.md @@ -0,0 +1,3 @@ +# Title + +## Hello World \ No newline at end of file diff --git a/var/www/html/cookie.php b/var/www/html/cookie.php new file mode 100644 index 0000000..c939910 --- /dev/null +++ b/var/www/html/cookie.php @@ -0,0 +1,100 @@ + 0) { + $input = file_get_contents('php://input'); + } + return $input; +} + +function parse_cgi_cookies() { + $cookies = []; + if (isset($_SERVER['HTTP_COOKIE'])) { + foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { + $parts = explode('=', $cookie, 2); + if (count($parts) === 2) { + $cookies[trim($parts[0])] = urldecode(trim($parts[1])); + } + } + } + return $cookies; +} + +function handle_request() { + $cookies = parse_cgi_cookies(); + if (!isset($cookies['session_id'])) { + $cookies['session_id'] = bin2hex(random_bytes(16)); + header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); + } + $post_data = []; + if ($_SERVER['REQUEST_METHOD'] === 'POST') { + $raw_input = parse_cgi_input(); + if (!empty($raw_input)) { + parse_str($raw_input, $post_data); + } + if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { + $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; + header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); + } + } + header('Content-Type: text/html'); + ?> + + + + CGI Request Information + + + +

CGI Request Information

+ +

Cookies:

+ + + + $value): ?> + + +
Cookie NameValue
+ +

No cookies found.

+ + +

POST Data:

+
+ +

Set a Cookie

+ +
+
+ + + +

Server Environment:

+
 $value) {
+            echo htmlspecialchars($key) . ": " . 
+                (is_array($value) 
+                    ? print_r($value, true) 
+                    : htmlspecialchars($value)) . "\n";
+        }
+        ?>
+ + + \ No newline at end of file diff --git a/var/www/html/cookie.py b/var/www/html/cookie.py new file mode 100644 index 0000000..1c4b2c2 --- /dev/null +++ b/var/www/html/cookie.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 + +import http.cookies +import os + +# Create a cookie +cookie = http.cookies.SimpleCookie() +cookie["user"] = "John" +cookie["user"]["path"] = "/" # Cookie available site-wide +cookie["user"]["max-age"] = 3600 # Expires in 1 hour + +# Print headers +print("Content-Type: text/html") +print(cookie.output()) # This sets the cookie in the browser +print() + +# Print simple HTML +print(""" + + + + Set Cookie + + +

Python CGI Cookie Example

+

Cookie 'user' is set to 'John'.

+ + +""") \ No newline at end of file diff --git a/var/www/html/setcookie.php b/var/www/html/setcookie.php new file mode 100644 index 0000000..f0cf73f --- /dev/null +++ b/var/www/html/setcookie.php @@ -0,0 +1,36 @@ +"; + } else { + echo "Please provide both cookie name and value.
"; + } +} +?> + + + + + + + Set Cookie + + +
+        
+    
+
+
+
+ +
+ + \ No newline at end of file diff --git a/websites/main/cookie.php b/websites/main/cookie.php new file mode 100644 index 0000000..9f27de3 --- /dev/null +++ b/websites/main/cookie.php @@ -0,0 +1,104 @@ + 0) { + $input = file_get_contents('php://input'); + } + return $input; +} + +function parse_cgi_cookies() { + $cookies = []; + if (isset($_SERVER['HTTP_COOKIE'])) { + foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { + $parts = explode('=', $cookie, 2); + if (count($parts) === 2) { + $cookies[trim($parts[0])] = urldecode(trim($parts[1])); + } + } + } + return $cookies; +} + +function handle_request() { + $cookies = parse_cgi_cookies(); + + if (!isset($cookies['session_id'])) { + $cookies['session_id'] = bin2hex(random_bytes(16)); + header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); + } + + $post_data = []; + if ($_SERVER['REQUEST_METHOD'] === 'POST') { + $raw_input = parse_cgi_input(); + if (!empty($raw_input)) { + parse_str($raw_input, $post_data); + } + + if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { + $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; + header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); + } + } + + header('Content-Type: text/html'); + + ?> + + + + CGI Request Information + + + +

CGI Request Information

+ +

Cookies:

+ + + + $value): ?> + + +
Cookie NameValue
+ +

No cookies found.

+ + +

POST Data:

+
+ +

Set a Cookie

+
+
+
+ +
+ +

Server Environment:

+
 $value) {
+            echo htmlspecialchars($key) . ": " . 
+                (is_array($value) 
+                    ? print_r($value, true) 
+                    : htmlspecialchars($value)) . "\n";
+        }
+        ?>
+ + + \ No newline at end of file From 2bd4952f1b99b770a4b6e5a3a2aa3be5d641cfaf Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Sun, 25 May 2025 16:25:32 +0100 Subject: [PATCH 58/66] solve cookie issue --- configs/config.conf | 2 +- srcs/models/Cgi.cpp | 7 ++++--- srcs/models/Response.cpp | 5 ++++- srcs/models/WebservHandler.cpp | 2 +- websites/main/scripts/page.sh | 18 ++++++++++++++++++ 5 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 websites/main/scripts/page.sh diff --git a/configs/config.conf b/configs/config.conf index 3db7576..77abb30 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -30,7 +30,7 @@ allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" upload_store = "websites/main/uploads/" -cgi = "/usr/bin/php-cgi:.php,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs" +cgi = "/bin/bash:.sh" ############################################################################### diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 4933961..ee0d4ce 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -5,11 +5,12 @@ /* +:+ +:+ +:+ */ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2025/05/07 19:52:42 by mboujama #+# #+# */ -/* Updated: 2025/05/24 13:31:52 by mboujama ### ########.fr */ +/* Created: Invalid date by #+# #+# */ +/* Updated: 2025/05/25 15:39:09 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ + #include "../../headers/Cgi.hpp" #include #include //! @@ -118,7 +119,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) dup2(stdinPipe[0], STDIN_FILENO); dup2(stdoutPipe[1], STDOUT_FILENO); - dup2(stdoutPipe[1], STDERR_FILENO); + // dup2(stdoutPipe[1], STDERR_FILENO); close(stdoutPipe[0]); close(stdoutPipe[1]); diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 3272e27..6833fc6 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/25 15:15:39 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 15:24:35 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -199,6 +199,9 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = CREATED; status_text = "Created"; headers["Allow-Origin"] = "*"; + status_code = CREATED; + status_text = "Created"; + headers["Allow-Origin"] = "*"; wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index c22d3a6..573350f 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/25 15:14:59 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 15:25:19 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/websites/main/scripts/page.sh b/websites/main/scripts/page.sh new file mode 100644 index 0000000..e3c59cc --- /dev/null +++ b/websites/main/scripts/page.sh @@ -0,0 +1,18 @@ +#!/bin/bash + + +cat << EOF +Content-Type: text/html + + + + + + + Webserv | Bach + +

Welcome from Bash CGI

+ + + +EOF \ No newline at end of file From 95fe23db0dca03c0f2e5611e0562537302cd1b21 Mon Sep 17 00:00:00 2001 From: moadboujmaa Date: Sun, 25 May 2025 16:50:58 +0100 Subject: [PATCH 59/66] multiple CGI in response --- configs/config.conf | 2 +- srcs/models/Response.cpp | 9 +++------ var/www/html/script.sh | 1 + 3 files changed, 5 insertions(+), 7 deletions(-) create mode 100644 var/www/html/script.sh diff --git a/configs/config.conf b/configs/config.conf index 77abb30..1881f0e 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -30,7 +30,7 @@ allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" upload_store = "websites/main/uploads/" -cgi = "/bin/bash:.sh" +cgi = "/bin/bash:.sh,/usr/bin/go-cgi:.go,/usr/bin/cs-cgi:.cs,/usr/bin/python3:.py" ############################################################################### diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 6833fc6..40a74a6 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: mboujama +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/25 15:24:35 by mboujama ### ########.fr */ +/* Updated: 2025/05/25 16:44:17 by mboujama ### ########.fr */ /* */ /* ************************************************************************** */ @@ -164,7 +164,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (!index.empty()) path += index; std::string extension = path.substr(path.find_last_of('.')); - if (!extension.compare(".py") || !extension.compare(".php")) { + if (client.server->getCGI(extension).compare("not_found")) { body = cgi->executeCgiScript(req, serverEnv); isCgi = true; } @@ -191,7 +191,7 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & return; } std::string extension = path.substr(path.find_last_of('.')); - if (!extension.compare(".py") || !extension.compare(".php")) { + if (client.server->getCGI(extension).compare("not_found")) { body = cgi->executeCgiScript(req, serverEnv); isCgi = true; } @@ -199,9 +199,6 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = CREATED; status_text = "Created"; headers["Allow-Origin"] = "*"; - status_code = CREATED; - status_text = "Created"; - headers["Allow-Origin"] = "*"; wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/var/www/html/script.sh b/var/www/html/script.sh new file mode 100644 index 0000000..2fba4b5 --- /dev/null +++ b/var/www/html/script.sh @@ -0,0 +1 @@ +echo "hello world"; \ No newline at end of file From 9a57231d93b11e53aa3e791993173e52f4806582 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Sun, 25 May 2025 18:07:35 +0100 Subject: [PATCH 60/66] php-cgi not working --- configs/config.conf | 2 +- configs/ts.php | 100 +++++++++++++++++++++++++++++++++ headers/Types.hpp | 2 + srcs/models/Cgi.cpp | 4 +- srcs/models/WebservHandler.cpp | 4 +- 5 files changed, 106 insertions(+), 6 deletions(-) create mode 100644 configs/ts.php diff --git a/configs/config.conf b/configs/config.conf index 01454df..f7c32e9 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -14,7 +14,7 @@ client_max_body_size = "40000000000" # optional client_timeout = "555" # optional -redirects = "var/www/html/main/index.html:var/www/html/main/page.html,/tasks/index3.html:/new/index3.html" +redirects = "/index.html:/page.html" # optional client_body_temp_path= "var/tmp" diff --git a/configs/ts.php b/configs/ts.php new file mode 100644 index 0000000..c939910 --- /dev/null +++ b/configs/ts.php @@ -0,0 +1,100 @@ + 0) { + $input = file_get_contents('php://input'); + } + return $input; +} + +function parse_cgi_cookies() { + $cookies = []; + if (isset($_SERVER['HTTP_COOKIE'])) { + foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { + $parts = explode('=', $cookie, 2); + if (count($parts) === 2) { + $cookies[trim($parts[0])] = urldecode(trim($parts[1])); + } + } + } + return $cookies; +} + +function handle_request() { + $cookies = parse_cgi_cookies(); + if (!isset($cookies['session_id'])) { + $cookies['session_id'] = bin2hex(random_bytes(16)); + header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); + } + $post_data = []; + if ($_SERVER['REQUEST_METHOD'] === 'POST') { + $raw_input = parse_cgi_input(); + if (!empty($raw_input)) { + parse_str($raw_input, $post_data); + } + if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { + $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; + header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); + } + } + header('Content-Type: text/html'); + ?> + + + + CGI Request Information + + + +

CGI Request Information

+ +

Cookies:

+ + + + $value): ?> + + +
Cookie NameValue
+ +

No cookies found.

+ + +

POST Data:

+
+ +

Set a Cookie

+
+
+
+ +
+ +

Server Environment:

+
 $value) {
+            echo htmlspecialchars($key) . ": " . 
+                (is_array($value) 
+                    ? print_r($value, true) 
+                    : htmlspecialchars($value)) . "\n";
+        }
+        ?>
+ + + \ No newline at end of file diff --git a/headers/Types.hpp b/headers/Types.hpp index ba930f1..a204f24 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -53,6 +53,8 @@ #define BODY_TEMP_PATH "./tmp/path" +# define PHP_CGI_PATH "/Users/ochouati/Desktop/webserv/headers/Types.hpp" //! PHP CGI Path + # define RUNNING 1 # define POLL_TIMEOUT 50 # define END_OF_HEADERS "\r\n\r\n" diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 5ff393b..c43bb2c 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: Invalid date by #+# #+# */ -/* Updated: 2025/05/25 16:53:53 by ochouati ### ########.fr */ +/* Updated: 2025/05/25 17:59:48 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -96,7 +96,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) scriptExtension = ""; std::cout << COL_RED << "Error: Unsupported CGI script extension: " << scriptExtension << END_COL << std::endl; if (scriptExtension == ".php") - interpreterPath = locateExecutable(binaryPaths, "php"); + interpreterPath = PHP_CGI_PATH; else if (scriptExtension == ".py") interpreterPath = locateExecutable(binaryPaths, "python3"); // Multiple CGI Not tested diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index a7f37e1..565f3a7 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/25 16:53:24 by ochouati ### ########.fr */ +/* Updated: 2025/05/25 17:32:18 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -176,9 +176,7 @@ void WebservHandler::validateRequestHeaders(ClientData& client) { if (!client.isHeaderComplete) return; - std::cout << "Headers: " << client.headers << std::endl; this->validateUrl(client); - std::cout << " ============================ " << std::endl; if (client.type == CHUNKED) return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); std::map::iterator it = client.server->getAllowedMethods().find(client.method); From b8ee90e30cb85ce6e0cc20f2dd9cd4b7ccfc3b33 Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Sun, 25 May 2025 20:50:45 +0100 Subject: [PATCH 61/66] debuging --- Makefile | 1 + headers/ClientData.hpp | 4 +- headers/Request.hpp | 2 +- headers/Types.hpp | 2 +- srcs/models/Cgi.cpp | 32 ++-- srcs/models/Request.cpp | 4 +- srcs/models/Response.cpp | 5 + srcs/models/Webserv.cpp | 1 + srcs/models/WebservHandler.cpp | 1 + var/tmp/upload_Server.cpp | 325 --------------------------------- var/tmp/upload_Upload.cpp | 121 ------------ var/www/html/cookie.py | 6 +- 12 files changed, 32 insertions(+), 472 deletions(-) delete mode 100644 var/tmp/upload_Server.cpp delete mode 100644 var/tmp/upload_Upload.cpp diff --git a/Makefile b/Makefile index 4b4ce47..6be2449 100644 --- a/Makefile +++ b/Makefile @@ -21,6 +21,7 @@ HEADERS=headers/*.hpp OBJS=$(SRCS:.cpp=.o) all: $(NAME) + mkdir -p ./var/tmp $(NAME): $(OBJS) $(CPP) $(CPPFLAGS) $(OBJS) -o $(NAME) diff --git a/headers/ClientData.hpp b/headers/ClientData.hpp index 32e9c40..06d42d5 100644 --- a/headers/ClientData.hpp +++ b/headers/ClientData.hpp @@ -19,7 +19,7 @@ class Response; struct ClientData { int fd; - int file; //! + int status; //! int currentFileFd; long contentLen; long bodyReded; @@ -43,7 +43,7 @@ struct ClientData { requestProgress progress; std::map uploadFd; //! add map - ClientData() : file(-1),currentFileFd(-1) ,contentLen(-1), bodyReded(-1), isRequestComplete(false), isHeaderComplete(false),isHeadersChecked(false), + ClientData() : status(0),currentFileFd(-1) ,contentLen(-1), bodyReded(-1), isRequestComplete(false), isHeaderComplete(false),isHeadersChecked(false), isHeadersSent(false), server(NULL), bytesSent(0),readed(0),startTime(FtPars::getCurrentTimeMs()),resp(NULL), type(NOT_SET), progress(NOT_STARTED){} ~ClientData(); }; diff --git a/headers/Request.hpp b/headers/Request.hpp index 69b73ad..1eaca1c 100644 --- a/headers/Request.hpp +++ b/headers/Request.hpp @@ -18,7 +18,7 @@ class Request { ~Request(); void setPath(std::string &newPath); - void convertToEnv(void); + void convertToEnv(void); void printHeaders(void) const; size_t getQuerySize(void) const; size_t getEnvSize(void) const; diff --git a/headers/Types.hpp b/headers/Types.hpp index a204f24..960a27e 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -53,7 +53,7 @@ #define BODY_TEMP_PATH "./tmp/path" -# define PHP_CGI_PATH "/Users/ochouati/Desktop/webserv/headers/Types.hpp" //! PHP CGI Path +# define PHP_CGI_PATH "/Users/achakkaf/Documents/webser42/configs/php-cgi" //! PHP CGI Path # define RUNNING 1 # define POLL_TIMEOUT 50 diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index c43bb2c..f6cbc3f 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -94,24 +94,19 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) scriptExtension = request.getPath().substr(extensionPos); else scriptExtension = ""; - std::cout << COL_RED << "Error: Unsupported CGI script extension: " << scriptExtension << END_COL << std::endl; + if (scriptExtension == ".php") interpreterPath = PHP_CGI_PATH; else if (scriptExtension == ".py") interpreterPath = locateExecutable(binaryPaths, "python3"); - // Multiple CGI Not tested - else { + else interpreterPath = request.client.server->getCGI(scriptExtension); - if(interpreterPath.empty()){ - return ""; //! is this return value valid ? - } - } int stdoutPipe[2], stdinPipe[2]; if (pipe(stdoutPipe) < 0) - std::cerr << COL_RED << "Error: pipe stdout creation failed\n" << END_COL; + request.client.status = -1; if (pipe(stdinPipe) < 0){ - std::cerr << COL_RED << "Error: pipe stdin creation failed\n" << END_COL; + request.client.status = -1; close(stdoutPipe[0]); close(stdoutPipe[1]); } @@ -131,7 +126,11 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) std::string fullpath = request.client.server->getRootPath() + request.getPath(); char *arguments[3] = {strdup(interpreterPath.c_str()), strdup(fullpath.c_str()), NULL}; execve(arguments[0], arguments, envVariables); - std::cerr << "Error: execve failed\n"; + request.client.status = -1; + for(size_t i = 0; envVariables[i]; ++i) + delete envVariables[i]; + delete[] envVariables; + exit(1); } else if (processId > 0) { @@ -141,9 +140,8 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) if (request.getMethod() == "POST" && !request.getBody().empty()) { std::string postData = request.getBody(); ssize_t bytesWritten = write(stdinPipe[1], postData.c_str(), postData.length()); - if (bytesWritten < 0) { - std::cerr << COL_RED << "Error: Failed to write POST data to CGI\n" << END_COL; - } + if (bytesWritten < 0) + request.client.status = -1; } close(stdinPipe[1]); @@ -155,9 +153,13 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) outputBuffer[bytesRead] = '\0'; file += outputBuffer; } - + close(stdoutPipe[0]); - waitpid(processId, NULL, 0); + int status; + waitpid(processId, &status, 0); + std::cout << "status:" << status << std::endl; + if (WIFSIGNALED(status)) + request.client.status = WIFSIGNALED(status); } else { diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index 2a5b2e7..297abb9 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -76,6 +76,7 @@ Request::Request(const std::string &requestString, ClientData& c) :client(c) void Request::convertToEnv(void) { vEnv.push_back("REQUEST_METHOD="+ method); + // vEnv.push_back("REDIRECT_STATUS=1"); vEnv.push_back("SERVER_NAME=Webserv"); vEnv.push_back("SERVER_PORT="+ ResponseUtils::toString(client.server->getPort())); vEnv.push_back("SCRIPT_FILENAME="+ path); @@ -96,8 +97,7 @@ void Request::convertToEnv(void) if (!headerPairs["Host"].empty()) vEnv.push_back("HTTP_HOST="+ headerPairs["Host"]); - // vEnv.push_back(("DOCUMENT_ROOT="+ client.server->getRootPath())); - vEnv.push_back("DOCUMENT_ROOT=/Users/achakkaf/Documents/webserv/var/www/html"); + vEnv.push_back(("DOCUMENT_ROOT="+ client.server->getRootPath())); if (!headerPairs["User-Agent"].empty()) vEnv.push_back("HTTP_USER_AGENT="+ headerPairs["User-Agent"]); diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index cb35ac8..72cc5a5 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -51,6 +51,7 @@ size_t Response::getContentlength() const { std::string Response::combineResponse(void) { std::ostringstream res; + std::cout << COL_RED << body << END_COL << std::endl; res << http_version << " " << status_code << " " << status_text << "\r\n"; std::map::iterator it; for (it = headers.begin(); it != headers.end(); it++) @@ -80,6 +81,7 @@ Response::Response(struct ClientData &client, Request &req) { headers["Content-Length"] = "0"; headers["Date"] = ResponseUtils::getDateTime(); fd = -1; + if (full_path.find("..") != std::string::npos) status_code = FORBIDDEN; else if (!client.server->getAllowedMethods()[req.getMethod()]) { @@ -166,6 +168,9 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p std::string extension = path.substr(path.find_last_of('.')); if (!extension.compare(".php") || !extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { body = cgi->executeCgiScript(req, serverEnv); + std::cout << "status => " << req.client.status << std::endl; + if (req.client.status != 0) + status_code = INTERNAL_SERVER_ERROR; isCgi = true; } else { diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index a124f5c..c9444b6 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -149,6 +149,7 @@ void Webserv::prepareClientResponse(ClientData& client) // std::cout << " PPP, the client is: " << client.fd << std::endl; try { Request req(client.headers.append(client.request), client); + client.status = 200000; if (!client.resp) client.resp = new Response(client, req); client.progress = READY; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 565f3a7..6100478 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -150,6 +150,7 @@ void WebservHandler::handleRequest(ClientData& client) return this->_closeClient(client.fd); if (!client.isHeadersSent) { std::string res = client.resp->combineResponse(); + std::cout << res << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; diff --git a/var/tmp/upload_Server.cpp b/var/tmp/upload_Server.cpp deleted file mode 100644 index d2c798e..0000000 --- a/var/tmp/upload_Server.cpp +++ /dev/null @@ -1,325 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* Server.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/13 15:56:06 by ochouati #+# #+# */ -/* Updated: 2025/02/26 09:52:54 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include "../../headers/header.hpp" -#include -#include -#include - - - -Server::Server(void) //! i think I have to remove this -{ -} - -Server::~Server(void) -{ - if (this->serverSocket != -1) - close(this->serverSocket); - if (this->serverBind != -1) - close(this->serverBind); -} - -Server::Server(const Server& srv, uint32_t port) //! -{ - this->rootPath = srv.rootPath; - this->host = srv.host; - this->port = port; - this->serverName = srv.serverName; - this->limitClientBodySize = srv.limitClientBodySize; - this->errorPage404 = srv.errorPage404; - this->errorPage500 = srv.errorPage500; - this->allowedMethods = srv.allowedMethods; - this->indexes = srv.indexes; - this->autoIndex = srv.autoIndex; - this->serverBind = -1; - this->serverSocket = -1; - this->timeout = srv.timeout; -} - - -Server::Server(std::vector& arr, size_t& idx) -{ - this->limitClientBodySize = FT_LIMIT_BODY_SIZE; - this->port = INT_MAX; - this->allowedMethods["GET"] = true; - this->allowedMethods["POST"] = false; - this->allowedMethods["DELETE"] = false; - this->indexes["index.html"] = false; - this->autoIndex = false; - this->enableUploads = false; - this->clientBodyTempPath = BODY_TEMP_PATH; - this->timeout = DEFAULT_TIME_OUT; - setServer(arr, idx, *this); -} - -// GETTERS -uint32_t Server::getPort(void) const -{ - return (this->port); -} - -size_t Server::getTimeout(void) const -{ - return (this->timeout); -} - -std::string Server::getHost(void) const -{ - return (this->host); -} - -std::string Server::getserverName(void) const -{ - return (this->serverName); -} - -std::string Server::getRootPath(void) const -{ - return (this->rootPath); -} - -size_t Server::getLimitClientBodySize(void) const -{ - return (this->limitClientBodySize); -} - -std::string Server::getErrorPage404(void) const -{ - return (this->errorPage404); -} - -std::string Server::getErrorPage500(void) const -{ - return (this->errorPage500); -} - -std::map Server::getAllowedMethods(void) const { - return (this->allowedMethods); -} - -std::map Server::getIndexes(void) const -{ - return (this->indexes); -} - -bool Server::getAutoIndex(void) const -{ - return (this->autoIndex); -} - -const std::vector& Server::getPorts(void) const -{ - return (this->ports); -} - -bool Server::getEnableUploads(void) const -{ - return (this->enableUploads); -} - -const std::string& Server::getClientBodyTempPath(void) const -{ - return (this->clientBodyTempPath); -} - -const std::string& Server::getUploadsPath(void) const -{ - return (this->uploadsPath); -} - -int Server::getSocket() const -{ - return (this->serverSocket); -} - -std::map& Server::getRedirects(void) -{ - return (this->redirects); -} - -const std::string& Server::getCGI(std::string& val) const -{ - std::map::const_iterator it = this->cgis.find(val); - if (it != this->cgis.end()) - return (it->second); - return (*(notFound)); -} - -const std::map& Server::getCGIs() const -{ - return (this->cgis); -} - -// SETTERS -void Server::setPort(uint32_t val) -{ - this->port = val; -} - -void Server::setTimeout(size_t val) -{ - this->timeout = val; -} - -void Server::setHost(std::string& val) -{ - this->host = val; -} - -void Server::setClientBodyTempPath(std::string& val) -{ - this->clientBodyTempPath = val; -} - -void Server::setUploadsPath(std::string& val) -{ - this->uploadsPath = val; -} - -void Server::setserverName(std::string& val) -{ - this->serverName = val; -} - -void Server::setLimitClientBodySize(size_t val) -{ - this->limitClientBodySize = val; -} - -void Server::setErrorPage404(std::string& val) -{ - this->errorPage404 = val; -} - -void Server::setErrorPage500(std::string& val) -{ - this->errorPage500 = val; -} - -void Server::setIndex(std::string& key, bool val) -{ - this->indexes[key] = val; -} - -void Server::setMethods(std::map mp) -{ - this->allowedMethods = mp; -} - -void Server::setAutoIndex(bool val) -{ - this->autoIndex = val; -} -void Server::setPorts(uint32_t val) -{ - this->ports.push_back(val); -} - -void Server::setEnableUploads(bool val) -{ - this->enableUploads = val; -} - -void Server::setRootPath(std::string& val) -{ - this->rootPath = val; -} - -void Server::setRedirects(const std::string& key, const std::string& val) -{ - this->redirects[key] = val; -} - -void Server::setCGI(std::string& key, std::string& val) -{ - this->cgis[key] = val; -} - -// INET FUNCTIONS - -void Server::initServer(void) -{ - this->ftSocket(); - this->setSocketOptions(); - this->ftBind(); - this->ftListen(); - this->setNonBlocking(this->serverSocket); - std::cout << "Path: " << this->rootPath << " " << (this->rootPath.empty() ? "Empty" : "") << std::endl; -} - -void Server::ftSocket(void) -{ - this->serverSocket = socket(AF_INET, SOCK_STREAM, 0); - if (this->serverSocket < 0) - throw std::runtime_error("Socket creation failed"); -} - -void Server::setSocketOptions(void) -{ - int opt = 1; - if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) < 0) - throw std::runtime_error("Set socket options REUSEADDR failed"); - #ifdef __APPLE__ - if (this->serverSocket < 0 || setsockopt(this->serverSocket, SOL_SOCKET, SO_NOSIGPIPE, &opt, sizeof(opt)) < 0) - throw std::runtime_error("Set socket options SO_NOSIGPIPE failed"); - #endif - #ifdef __linux__ - signal(SIGPIPE, SIG_IGN); - #endif -} - - -void Server::ftBind(void) -{ - struct sockaddr_in addr; - - std::memset(&addr, 0, sizeof(addr)); - addr.sin_family = AF_INET; - addr.sin_port = htons(this->port); - std::cout << "Host: " << COL_GREEN << this->host << END_COL " Port: " << COL_YELLOW << this->port << END_COL << std::endl; - addr.sin_addr.s_addr = inet_addr(this->host.c_str()); - if ((this->serverBind = bind(this->serverSocket, (struct sockaddr *)&addr, sizeof(addr))) < 0) - throw std::runtime_error("Bind failed 3"); -} - - -void Server::ftListen(void) -{ - if ((this->serverListenFd = listen(this->serverSocket, LISTEN_BACKLOG)) < 0) - throw std::runtime_error("Listen failed"); -} - -void Server::setNonBlocking(int fd) -{ - if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) - throw std::runtime_error("Set non blocking failed"); -} - -bool Server::isValidServer(void) -{ - std::cout << "Server: " << this->serverName << std::endl; - std::cout << "Host: " << this->host << std::endl; - std::cout << "Port: " << this->port << std::endl; - std::cout << "Root: " << this->rootPath << std::endl; - std::cout << "Limit Client Body Size: " << this->limitClientBodySize << std::endl; - std::cout << "Timeout: " << this->timeout << std::endl; - std::cout << "Enable Uploads: " << (this->enableUploads ? "true" : "false") << std::endl; - std::cout << "Auto Index: " << (this->autoIndex ? "true" : "false") << std::endl; - std::cout << "Upload path: " << this->uploadsPath << std::endl; - std::cout << " ********\n"; - if (this->rootPath.empty() || this->port == INT_MAX || this->host.empty()) { - std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; - return (false); - } - return (true); -} diff --git a/var/tmp/upload_Upload.cpp b/var/tmp/upload_Upload.cpp deleted file mode 100644 index 07bbae9..0000000 --- a/var/tmp/upload_Upload.cpp +++ /dev/null @@ -1,121 +0,0 @@ -#include "../../headers/Webserv.hpp" - - -/*-------- LARGE FILES ALGORITHM: --------*/ -// Receive chunk → store in buffer -// Scan for --boundary123: -// Found: -// Save previous data to temp file -// Parse headers for new filename -// Start new temp file -// Not found: Append to current temp file -// On --boundary123--: -// Finalize last file -// Delete partial data if any -// Only after ALL boundaries processed: -// Rename temp files to final names -/*-----------------------------------------*/ - - -/// get file name from a buffer request -std::string getFileName(const std::string &buffer){ - std::string fileName; - size_t i = buffer.find("filename=\""); - if (i != std::string::npos) { - for (i = i + 10; buffer[i] != '"' && buffer[i] ; ++i){ - fileName += buffer[i]; - } - if(buffer[i] != '"') - return ""; - } - return fileName; -} - -void closeFiles(ClientData &client) -{ - std::map::iterator it; - - for (it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it) - close(it->second); - client.uploadFd.clear(); -} - -//! set client.currentFileFd to -1 -//! call setheader() function (I am not sure about the function name) -// You should put all tmp files in a temp folder -// you should close all the files + you should reset the files -void processMultipartUpload(ClientData &client) -{ - ssize_t written; - - std::cout << COL_RED << "uploading..." << END_COL << std::endl; - while(!client.request.empty()) { - if (client.uploadFd.find(client.tmpFileName) == client.uploadFd.end()){ - size_t headers = client.request.find("\r\n\r\n"); - if (headers != std::string::npos) { - client.fileName = getFileName(client.request); - if (!client.fileName.empty()) { - client.tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) - close(client.uploadFd[client.tmpFileName]); - client.uploadFd[client.tmpFileName] = open(client.tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); - if (client.uploadFd[client.tmpFileName] == -1){ - closeFiles(client); - break; //! close all the files - } - } - client.request.erase(0, headers + 4); - } - else - return; - } - - - if (client.request.find("\r") != std::string::npos){ - size_t boundaryPos = client.request.find("--" + client.boundary + "\r\n"); - size_t endBoundary; - if (boundaryPos != std::string::npos) { - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()){ - written = write(client.uploadFd[client.tmpFileName], - client.request.c_str(), - boundaryPos > 2 ? boundaryPos - 2: 0); - if (written == -1){ - closeFiles(client); - return; - } - } - client.request.erase(0, boundaryPos + client.boundary.size() + 4); - client.tmpFileName.clear(); - continue; - } - else if((endBoundary = client.request.find("--" + client.boundary + "--\r\n")) != std::string::npos){ - written = write(client.uploadFd[client.tmpFileName], - client.request.c_str(), - endBoundary > 2 ? endBoundary - 2: 0); - client.request.clear(); - closeFiles(client); - std::cout << COL_GREEN << "tmpfile: "<< client.tmpFileName.c_str() << END_COL << std::endl; - std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + client.fileName << END_COL << std::endl; - std::rename(client.tmpFileName.c_str(), (client.server->getUploadsPath() + client.fileName).c_str()); //! handle if it failed - std::remove(client.tmpFileName.c_str()); - client.tmpFileName.clear(); - std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; - - //! REQUEST_COMPLETE - } - else - return; - } - - if (client.uploadFd.find(client.tmpFileName) != client.uploadFd.end()) { - written = write(client.uploadFd[client.tmpFileName], - client.request.c_str(), - client.request.size()); - if (written == -1){ - closeFiles(client); - return; - } - client.request.erase(0, written); - } - } -} diff --git a/var/www/html/cookie.py b/var/www/html/cookie.py index 790f850..20d8d4b 100644 --- a/var/www/html/cookie.py +++ b/var/www/html/cookie.py @@ -12,11 +12,7 @@ print(cookie.output()) print() -print(""" - - - - Set Cookie +pookie

Python CGI Cookie Example

From 151083be8ef3392812afebd5419506211c24e6eb Mon Sep 17 00:00:00 2001 From: Abdelaziz Chakkaf Date: Mon, 26 May 2025 11:18:52 +0100 Subject: [PATCH 62/66] enable upload & CGI failed --- configs/config.conf | 4 +-- headers/HttpErrors.hpp | 1 + srcs/models/Cgi.cpp | 19 +++++----- srcs/models/Response.cpp | 47 +++++++++++++++++-------- srcs/models/Upload.cpp | 6 +++- srcs/models/Webserv.cpp | 1 - srcs/utils/httpResponseErrors.cpp | 13 ++++++- var/www/html/cookie.py | 17 ++++++--- var/www/html/post.py | 47 +++++++++++++++++++++++++ var/www/html/print_env.py | 8 ----- var/www/html/uploads/script.js | 58 +++++++++++++++++++++++++++++++ 11 files changed, 179 insertions(+), 42 deletions(-) create mode 100644 var/www/html/post.py delete mode 100644 var/www/html/print_env.py create mode 100644 var/www/html/uploads/script.js diff --git a/configs/config.conf b/configs/config.conf index f7c32e9..9109188 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -19,12 +19,12 @@ redirects = "/index.html:/page.html" client_body_temp_path= "var/tmp" # location_root required -location_root = "var/www/html/main" +location_root = "var/www/html" indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" -upload_store = "var/www/html/main/uploads/" +upload_store = "var/www/html/uploads/" cgi = "/bin/bash:.sh" diff --git a/headers/HttpErrors.hpp b/headers/HttpErrors.hpp index 52d9e0b..b736d07 100644 --- a/headers/HttpErrors.hpp +++ b/headers/HttpErrors.hpp @@ -19,4 +19,5 @@ class HttpErrors { static void httpResponse414(ClientData& client); static void httpResponse413(ClientData& client); static void httpResponse405(ClientData& client); + static void httpResponse403(ClientData& client); }; diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index f6cbc3f..8b94480 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -81,7 +81,7 @@ std::string Cgi::locateExecutable(const std::vector &searchPaths, c std::string Cgi::executeCgiScript(Request &request, char **systemEnv) { - std::cout << COL_YELLOW << "Executing CGI script: " << std::endl; + std::cout << COL_YELLOW << "Executing CGI script: Status: " << request.client.status << std::endl; request.convertToEnv(); char **envVariables = createEnvironmentVariables(request); std::vector binaryPaths = extractBinaryPaths(systemEnv); @@ -95,9 +95,7 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) else scriptExtension = ""; - if (scriptExtension == ".php") - interpreterPath = PHP_CGI_PATH; - else if (scriptExtension == ".py") + if (scriptExtension == ".py") interpreterPath = locateExecutable(binaryPaths, "python3"); else interpreterPath = request.client.server->getCGI(scriptExtension); @@ -155,11 +153,13 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) } close(stdoutPipe[0]); - int status; - waitpid(processId, &status, 0); - std::cout << "status:" << status << std::endl; - if (WIFSIGNALED(status)) - request.client.status = WIFSIGNALED(status); + std::cout << COL_RED << "the status: " << request.client.status << std::endl; + waitpid(processId, &request.client.status, 0); + std::cout << COL_RED << "the status after WPID: " << request.client.status << std::endl; + request.client.status = WEXITSTATUS(request.client.status); + if (request.client.status) + request.client.status = -1; + std::cout << COL_RED << "==> the status: " << request.client.status << std::endl; } else { @@ -177,3 +177,4 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) delete[] envVariables; return file; } + \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 72cc5a5..f16b0c7 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -105,6 +105,8 @@ Response::Response(struct ClientData &client, Request &req) { switch (status_code) { case CREATED: + if (!body.empty()) + headers["Content-Length"] = ResponseUtils::toString(getBodyLength()); break ; // 30x case MOVED_PERMANENTLY: @@ -129,6 +131,9 @@ Response::Response(struct ClientData &client, Request &req) { break; // 50x case INTERNAL_SERVER_ERROR: + body = ResponseUtils::getErrorPage(INTERNAL_SERVER_ERROR); + headers["Content-Length"] = ResponseUtils::toString(body.length()); + break ; break; default: status_code = OK; @@ -165,14 +170,19 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (isFile) { if (!index.empty()) path += index; - std::string extension = path.substr(path.find_last_of('.')); - if (!extension.compare(".php") || !extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { - body = cgi->executeCgiScript(req, serverEnv); - std::cout << "status => " << req.client.status << std::endl; - if (req.client.status != 0) - status_code = INTERNAL_SERVER_ERROR; - isCgi = true; - } + + // ! Check if directory instead of dot !!! + int dot = path.find_last_of("."); + if ((int)dot != -1) { + std::string extension = path.substr(dot); + if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { + body = cgi->executeCgiScript(req, serverEnv); + if (req.client.status != 0) + status_code = INTERNAL_SERVER_ERROR; + else + isCgi = true; + } + } else { struct stat fileStat; @@ -195,15 +205,22 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = FORBIDDEN; return; } - std::string extension = path.substr(path.find_last_of('.')); - if (!extension.compare(".php") || !extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { - body = cgi->executeCgiScript(req, serverEnv); - isCgi = true; + int dot = path.find_last_of("."); + if ((int)dot != -1) { + std::string extension = path.substr(dot); + if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { + body = cgi->executeCgiScript(req, serverEnv); + if (req.client.status != 0) + status_code = INTERNAL_SERVER_ERROR; + else + isCgi = true; + } + } else { + status_code = CREATED; + status_text = "Created"; } - (void) req; - status_code = CREATED; - status_text = "Created"; headers["Allow-Origin"] = "*"; + (void) req; wServ->enablePOLLOUT(client.fd); client.progress = READY; } diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 23e7b8b..3f6e8f3 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -1,5 +1,5 @@ #include "../../headers/Webserv.hpp" - +#include "../../headers/HttpErrors.hpp" /*-------- LARGE FILES ALGORITHM: --------*/ // Receive chunk → store in buffer @@ -55,6 +55,10 @@ void processMultipartUpload(ClientData &client) size_t headers = client.request.find("\r\n\r\n"); if (headers != std::string::npos) { client.fileName = getFileName(client.request); + if (!client.fileName.empty() && !client.server->getEnableUploads()){ + client.isRequestComplete = true; + HttpErrors::httpResponse403(client); + } if (!client.fileName.empty()) { tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder if (client.uploadFd.find(client.fileName) != client.uploadFd.end()) diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index c9444b6..a124f5c 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -149,7 +149,6 @@ void Webserv::prepareClientResponse(ClientData& client) // std::cout << " PPP, the client is: " << client.fd << std::endl; try { Request req(client.headers.append(client.request), client); - client.status = 200000; if (!client.resp) client.resp = new Response(client, req); client.progress = READY; diff --git a/srcs/utils/httpResponseErrors.cpp b/srcs/utils/httpResponseErrors.cpp index 7a1a1a6..4cf38fb 100644 --- a/srcs/utils/httpResponseErrors.cpp +++ b/srcs/utils/httpResponseErrors.cpp @@ -49,7 +49,7 @@ void HttpErrors::httpResponse413(ClientData& client) { } void HttpErrors::httpResponse405(ClientData& client) { - std::string response = "HTTP/1.1 413 405 Method Not Allowed\r\n" + std::string response = "HTTP/1.1 405 Method Not Allowed\r\n" "Content-Type: text/html\r\n" "Content-Length: 57\r\n" "\r\n

405 Method Not Allowed

"; @@ -58,3 +58,14 @@ void HttpErrors::httpResponse405(ClientData& client) { client.progress = READY; wServ->enablePOLLOUT(client.fd); } + +void HttpErrors::httpResponse403(ClientData& client) { + std::string response = "HTTP/1.1 403 Forbidden\r\n" + "Content-Type: text/html\r\n" + "Content-Length: 48\r\n" + "\r\n

403 Forbidden

"; + std::cout << COL_RED << response << END_COL << std::endl; + client.error = response; + client.progress = READY; + wServ->enablePOLLOUT(client.fd); +} diff --git a/var/www/html/cookie.py b/var/www/html/cookie.py index 20d8d4b..6a8bbc9 100644 --- a/var/www/html/cookie.py +++ b/var/www/html/cookie.py @@ -3,20 +3,27 @@ import http.cookies import os +# Create a cookie cookie = http.cookies.SimpleCookie() cookie["user"] = "John" -cookie["user"]["path"] = "/" -cookie["user"]["max-age"] = 3600 +cookie["user"]["path"] = "/" # Cookie available site-wide +cookie["user"]["max-age"] = 3600 # Expires in 1 hour +# Print headers print("Content-Type: text/html") -print(cookie.output()) +print(cookie.output()) # This sets the cookie in the browser print() -pookie +# Print simple HTML +print(""" + + + + Set Cookie

Python CGI Cookie Example

Cookie 'user' is set to 'John'.

-""") \ No newline at end of file +""") diff --git a/var/www/html/post.py b/var/www/html/post.py new file mode 100644 index 0000000..d0f9cbf --- /dev/null +++ b/var/www/html/post.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python3 +import cgi +import cgitb +cgitb.enable() + +print("Content-type: text/html") + +form = cgi.FieldStorage() +cookie_key = form.getvalue('cookieKey', '') +cookie_value = form.getvalue('cookieValue', '') + +html = """ + + + + Cookie Setter + + + +

Set Cookie

+""" + +if cookie_key and cookie_value: + print(f"Set-Cookie: {cookie_key}={cookie_value}; Path=/") + html += f'
Cookie set successfully: {cookie_key}={cookie_value}
' +elif cookie_key or cookie_value: + html += '
Please provide both cookie name and value
' + +html += """ +
+
+ + +
+
+ + +
+ +
+ + +""" + +print(html) \ No newline at end of file diff --git a/var/www/html/print_env.py b/var/www/html/print_env.py deleted file mode 100644 index d9bcf83..0000000 --- a/var/www/html/print_env.py +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env python3 -import os - -# Tell the browser this is plain text (not HTML) - -# Print all env variables, one per line -for key, value in os.environ.items(): - print(f"{key}: {value}
") # \n adds a newline \ No newline at end of file diff --git a/var/www/html/uploads/script.js b/var/www/html/uploads/script.js new file mode 100644 index 0000000..89281e8 --- /dev/null +++ b/var/www/html/uploads/script.js @@ -0,0 +1,58 @@ +function addNewTask() { + const task = document.getElementById("task"); + const tasks = document.getElementById("tasks"); + + if (task.value.trim().length !== 0) { + const newTask = document.createElement('div'); + newTask.className = "added-task"; + newTask.id = "added-task"; + + const newTaskCheckbox = document.createElement("input"); + newTaskCheckbox.type = "checkbox"; + newTaskCheckbox.className = "task-checkbox"; + newTaskCheckbox.id = "task-checkbox"; + newTask.appendChild(newTaskCheckbox); + + const newTaskContent = document.createElement("div"); + newTaskContent.className = "added-task-content"; + newTaskContent.id = "added-task-content"; + newTaskContent.innerText = task.value; + newTask.appendChild(newTaskContent); + + const newCloseBtn = document.createElement("button"); + newCloseBtn.className = "close-btn"; + newCloseBtn.id = "close-btn"; + newTask.appendChild(newCloseBtn); + + tasks.appendChild(newTask); + task.value = ""; + } +} + +document.getElementById("plus-btn").addEventListener('click', (e) => { + addNewTask(); +}); + +document.getElementById("task").addEventListener("keypress", (e) => { + if (e.key == "Enter") { + addNewTask(); + } +}); + +document.getElementById('board').addEventListener('click', (e) => { + if (e.target.classList.contains('close-btn')) { + e.target.closest('.added-task').remove(); + } +}); + +document.addEventListener('click', function (event) { + if (event.target.classList.contains('added-task-content') || ) { + event.target.classList.toggle('task-checked'); + } +}); + + + + +// const checkbox = document.querySelector(".tasks"); +// console.log(checkbox.childElementCount); \ No newline at end of file From 789ccb0c5d6c302a149ae032f21bb621c84dbb19 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 26 May 2025 12:33:20 +0100 Subject: [PATCH 63/66] File without extension fixed --- .github/workflows/ci.yml | 3 +- .gitignore | 4 +- Makefile | 9 +- configs/404.html | 14 -- configs/500.html | 14 -- configs/config.conf | 2 +- configs/index.html | 14 -- configs/php-cgi | Bin 12185400 -> 0 bytes configs/php/Makefile | 4 - configs/php/app.cpp | 65 ------ configs/php/index.php | 23 -- configs/py/index.py | 0 configs/ts.php | 100 --------- headers/Types.hpp | 4 - learning/cgi.cpp | 126 ----------- learning/index.html | 25 --- learning/main.cpp | 116 ---------- learning/php/Makefile | 8 - learning/php/index.php | 23 -- learning/tst.py | 8 - length.cpp | 18 -- otm/ART01.md | 68 ------ otm/EXPLAIN_run.md | 262 ----------------------- otm/POLL.md | 80 ------- otm/ROADMAP.md | 102 --------- otm/blueprint | 52 ----- req.rest | 7 - srcs/cgi/ft_cgi.cpp | 12 -- srcs/models/MimeTypes.cpp | 7 +- srcs/models/Response.cpp | 30 ++- srcs/models/ResponseUtils.cpp | 6 +- srcs/models/Server.cpp | 2 +- srcs/models/WebservHandler.cpp | 3 +- test/ping.sh | 22 -- test/post_strees.sh | 6 - test/post_testing.sh | 53 ----- test/runner.go | 145 ------------- test/strees.sh | 6 - test/test01.sh | 40 ---- test/testing.sh | 57 ----- var/www/app/index.html | 13 -- var/www/html/cookie.php | 100 --------- var/www/html/file | 1 + var/www/html/{index.html => i0ndex.html} | 0 var/www/html/index.py | 15 ++ var/www/html/script.sh | 19 +- var/www/html/setcookie.php | 36 ---- var/www/html/uploads/script.js | 58 ----- websites/main/cookie.php | 104 --------- websites/main/scripts/page.sh | 18 -- websites/simple/index.html | 13 -- websites/upload/index.html | 72 ------- 52 files changed, 66 insertions(+), 1923 deletions(-) delete mode 100644 configs/404.html delete mode 100644 configs/500.html delete mode 100644 configs/index.html delete mode 100755 configs/php-cgi delete mode 100644 configs/php/Makefile delete mode 100644 configs/php/app.cpp delete mode 100644 configs/php/index.php delete mode 100644 configs/py/index.py delete mode 100644 configs/ts.php delete mode 100644 learning/cgi.cpp delete mode 100644 learning/index.html delete mode 100644 learning/main.cpp delete mode 100644 learning/php/Makefile delete mode 100644 learning/php/index.php delete mode 100644 learning/tst.py delete mode 100644 length.cpp delete mode 100644 otm/ART01.md delete mode 100644 otm/EXPLAIN_run.md delete mode 100644 otm/POLL.md delete mode 100644 otm/ROADMAP.md delete mode 100644 otm/blueprint delete mode 100644 req.rest delete mode 100644 srcs/cgi/ft_cgi.cpp delete mode 100644 test/ping.sh delete mode 100644 test/post_strees.sh delete mode 100644 test/post_testing.sh delete mode 100644 test/runner.go delete mode 100644 test/strees.sh delete mode 100644 test/test01.sh delete mode 100644 test/testing.sh delete mode 100644 var/www/app/index.html delete mode 100644 var/www/html/cookie.php create mode 100644 var/www/html/file rename var/www/html/{index.html => i0ndex.html} (100%) create mode 100644 var/www/html/index.py delete mode 100644 var/www/html/setcookie.php delete mode 100644 var/www/html/uploads/script.js delete mode 100644 websites/main/cookie.php delete mode 100644 websites/main/scripts/page.sh delete mode 100644 websites/simple/index.html delete mode 100644 websites/upload/index.html diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 81e8606..15747ad 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,5 +24,4 @@ jobs: - name: Run make run: make - - name: Run tests - run: make tests + diff --git a/.gitignore b/.gitignore index 36ce8f1..d561c02 100644 --- a/.gitignore +++ b/.gitignore @@ -14,7 +14,7 @@ ts.txt *.obj *.p *.mp4 -# websites/main/video01.mp4 + ./configs/php/app configs/php/app # Precompiled Headers @@ -22,6 +22,8 @@ configs/php/app *.pch labs/app mmm/ +var/tmp/* +var/www/html/main/uploads/* *.log ts.html otm.cpp diff --git a/Makefile b/Makefile index 6be2449..2d87a09 100644 --- a/Makefile +++ b/Makefile @@ -3,18 +3,14 @@ CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -g -fsanitize=address NAME=webserv -# OTM SRCS=main.cpp srcs/parsing/config/readConfig.cpp srcs/parsing/helpers/strTrim.cpp \ srcs/parsing/helpers/FtPars.cpp srcs/models/Server.cpp \ srcs/utils/httpResponseErrors.cpp srcs/utils/serverUtils.cpp srcs/utils/ClientData.cpp \ -# ACHAKKAF -SRCS += srcs/cgi/ft_cgi.cpp srcs/models/Upload.cpp srcs/models/Request.cpp +SRCS += srcs/models/Upload.cpp srcs/models/Request.cpp -# MOAD SRCS += srcs/models/Response.cpp srcs/models/ResponseUtils.cpp srcs/models/MimeTypes.cpp srcs/models/Cgi.cpp -#OTM SRCS += srcs/models/Webserv.cpp srcs/models/WebservHandler.cpp HEADERS=headers/*.hpp @@ -34,8 +30,7 @@ clean: fclean: clean rm -f $(NAME) -tests: - bash test/test01.sh + re: fclean all diff --git a/configs/404.html b/configs/404.html deleted file mode 100644 index a3a2225..0000000 --- a/configs/404.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - 404 | Page not found - - - -
404 | Page not found
- - - \ No newline at end of file diff --git a/configs/500.html b/configs/500.html deleted file mode 100644 index c17bc68..0000000 --- a/configs/500.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - 500 | Server Error - - - -
500 | Server Error
- - - \ No newline at end of file diff --git a/configs/config.conf b/configs/config.conf index 9109188..e96cef4 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -6,7 +6,7 @@ host = "127.0.0.1" # required port = "8080,7070,3000" -# required +# optional server_name = "myserver.local" # optional client_max_body_size = "40000000000" diff --git a/configs/index.html b/configs/index.html deleted file mode 100644 index 11fc581..0000000 --- a/configs/index.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - Welcome - - - -
Welcome
- - - \ No newline at end of file diff --git a/configs/php-cgi b/configs/php-cgi deleted file mode 100755 index 26b46fb962c286dfb5db672da4350a23ed0a2cd5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12185400 zcmeFadwf&H);FG(7Rt>Ov|5!*(E>$KTeMn)YGWJNkyNXI;suIU5L6T;5flp5w8CbS zBPuG#E8-139z~Cray8}B7WHUF1q79<2ovI^qC&-^`F+1Ldndc4_?+`Rzvq45KkVm| zX75>RX4b4(vu4ejHIw%befxU{ha;h#!{JE8=V*Kykx=Exz>~vqJU$verKKgV5$-G8 zmt4fumVXH?U)y|RIWti~Y3XS9*wHOfWd6`2EfdZ6WTf%~lH^}$sc+&;pZS8X*5wuS zL}QTNuxzkI;(JmYoi7#k*V5AIKL0h-V@a*cOAQT{rt3_E*5ze;9+K@H(phnh?{@yRpcQ45milj+G3BOfOQ+m4>1O%fvVU(J{fI1Y z$%U#yzPB#JBt?FemQI{pI_cJ{r%qIC#~AMUX?fPCvzm>-QKUUg3Jf%e*4sGZoaW}n(tP#oeEd}H_NNYg-cC~c zPz%0Yd$sTCcz)Hd@%M%;ioW`EmBx3AmN-`YskHQ(>G9ET^=llyG@{B|IKt}Kmii=~ zs`9WOrcS;2CaZ+j^c9@(jO5=jw^$fTzgcgs%Zuw@ujj&%?jnzpUdWd!$Kg2E%=)za z&ig)1ezP2VStmIh71~U{o31aycX~LI}sn!F|XfwAH3wt?YsQ7FF$$bqf_&!-81l!ZFF{Ww8w|f zs!3NTo`UC8e5}7Lw4dcPl{07jkM-u^Lzp6;r6j~@0X?@)oPP6-x1BcRG|)BW8i4WF zI$y%I2~fK&^NqTFx^Lpt)6V~+e2$KtP+F%J_061m)ZI%x4_ggB*?l=6iO@GpbO$|M~YP2ma*1pB(s;1AlVhPY(Rafj>F$ zCkOuIz@HrWlLLQp;7<vP@FxfU%*Nb6||7f2{?+N!5boO*sd|E6)se zRE7MVG{fDb1vaLR+mI6#Z@)0u5&2<~vv-lhA@PmmiN`+U7`MUM+j<|@>U~VB_txX3$2c^-DjWD(Fgd#F5x#9d5REcp)8zy3n*4kk zGj=`y3G5W>^Cuvi7R-I)oQIhB=_wC6R?+S6s_u&anqKG8-xFsqL`EZjn#`EHNTI$% zRBn^Gs_C#6-4)VEg>8Hh^7Uy@dFgXUsN@dSq%wsRXbVDI|?aDA>F}JxJROx z%tpPS5WYHEvSwTy!Ky|lLh!LB^tzN8P2VNHcw#Wp^3MSFI&M+gg{2vY5SCY0N?}>r z3}Ff8`yM0BYfJEk{1_>LF(_5v0QtFG)|}t{ou}A0M*pWAs~So9l}`aRTh#wNy=jK6L|9mb7wxux^r(Q%t$-b9SzlYt)qD7 zgv3bF5qzu~gvDCdPPJ})TSFnl76g+=ua>Qwe27C~Z92YGvtAr+HERLu3Fe=ST4j6C zwwL=oaNo6qk__dPs?0?C(Sxd>ds>WZf7VH~kwLo-}E%2an*#fWryQqDV zoiZ3n87Lj4MP&ZuL8LI4+!d@w7oDcwoXh0fa`kqLdfTDi+C3#)B|C}o=AQ?mjQmR_MY*37PA#yKTXtfs0uE8Y%>;5&Z6)=N7^;9h6!6Vh$&@M4 zO97*)Qud!DkeOCW1(cwGUn-zZATzDZV9wolOM*5jpr1f)$*(LRuucJ&E8sP;Ix7f# zK>-Z~^u~bPz7#~Qc>=E^L=JWFHGxc`ti}LLu^(Ou<-?}MHa!9@Hl(5HA zf44O}@~~`p0|yr+%s#l%fe8B6$cDQ^c>F*XR5dMXwR%yBY_)zA8QnE8o3+lLjBdx< z;*m%+x?zH}6w|B34(5~o7;`wf>yj&x#64@&k^hn;eU56#T=iC=-d=fG!nUZlQLo6i zh3c&@w)D{f?NyV{R&ON=Hsl`?b^+gv{GDB;SnQ>=b*Id5NQ$omlDHpF0w*Z<(6T?^ z*{kngNvU(|jbiX?{Yk$d3WZGzrtvuj@2=oq6HZM9_#Qia|375@#(4goeAe_Gu_E4A zC_CaPX?%{sUsmvKgv%;ydGA-S`WP(Ob2Fap#ZOZx8{#Nw8}S?~zC^)mV{lvXXDZm6 z7R=6>bOl>Z7)=4R{8f9o&9BOqzeKp4`fTNXs$h>;FnhTn1)EP8qe61F#7KSMC0S%8 zK@9Pek{g50P|!PKP-vTYGcPB!F1dXdL=51sE;-43LgE*lRboy^yK^IL%`073xyHH1 zyGm)@7Abp|HfH%L6s9+Tu2n^S$zm~r0g+#i<+tGju{?%&wQ2g!O;;&>fRyi~Clku9kBr%qO5No=L$ z2JLy*rK3Fh@0!tbFA%hPBR+ZCV|t9(;|U5b~QE8OxSQr&-vO7RmNwy)mjp zv0!6I$pT-;ilGi?6?6_6{G3dT`uf0J{%p`gj*9af&dLV>3*`R|palQLn*M8;428lt zFc31zupr?`I0*?o|Arh|RmgXpN3W}xnbO`r-ea7n1?HwYe518MUAk94Ao^aHh;^5* z$Yb=@0vpmJLz$SW5|6G+KA*KnT6&&{$4C#&=-Qn`1=HH0^qlBAvsZeS_5tU%W9gOx z)=-M$jg86kxG-&#xV&+_H42NsbdP?(qemeKwJAyv28d64^hJTmuQMT-w(cG@5h@-N zwj*b=xcRS?zn)6~^y*R3>rqTE`Yz0Z=qS;>3x*8Zl&l%)kqflonBBl(vsO-mYyog4 z1k7vXUSZ~Lox(O{t)xlRc?0N7&^R!iYZl=IpKlv*HP>VUKIPPPDz@#?>VwtG5|ousX&Nm~_635Ww|n=WCb zEkV&nPEG>p1e>&-)q=JmpsiS+ovFF%Dl=(zaK`fLd%gO1B6u%p*rgfc8X}#|wC5L+ zAM6&d{$&x?U0IU24FHSsTL?4dC8qh}GSjlXSdVX)c^?=nnYT8JUq<>VWSis8_wJ0B=>BebY3firI|{(hd#=niG6e0?moeswfh~DzH&@ zo2h41$lbsxGS8$m$>`&tu^2Et~r#P zu-~PB;5zsTaNmZ+J<H%yB=5EFmraqbBzqhpBov!Ki+QEIA-k{Zp z^R$|MT@%(%SzmE+f@45U!scL-o>aLDeOBXsEPVWZ^>$S4=+LX}2?mI?m zdJVa$)ih@%)N5t++LW3Pi?0FK*P|#V_e*G)5)zQ>0X1OMef=MDgooOx$pe2N0wt;9 z#T6i{D&(BM0XhxTKf3%8NBEKC80ChRjuLWM!j~v7)}DeCAUlDq8Qz-a@H5C=&9NU? zOO8UlpUU!#pcJgKZvTlGRDsdSYhHyl8SMI9KYTfh>ZjC7(NH{SP@=IfBcVZGU$d`w zO>;7yHXPjP^llG-7^fYLgkNs>0Z=*^4bTG3ot$_5O8BblCaFJ7Z?gBpp+pUQPS~Oa zlkOuo5AM){qmPYhfkTPTc{R*Apccek_PT6$Q*-$5NQ*W3Ayu_(vZ1Ah7pZq8Pj7hh z5I74kKI|)H>3x1tmfUd^mRtgPj8$ugNu2@2k|aV*H-@R1@)&nU#{0yEmtq6XbEp?HE$)7`4ha4&m}><1v7C6T(G_%cOPd)uRjJO{UXonFGa zwJHE=`EQH+IKrRV<@Fl8fJVtBGU+2MJ0kOARHqaf1^8&GMMg<_kuf%-$e5ND6ZTH3 z+vON5b7)f<)a+7=nc}>n;I(IAdVyY8Z%!GVIc0q8I`|o;jD1tKNFCCkEkU+FQX#L{ zTV3!Uj*6F=`Hx0LI5{q=XeAi%A?)*TC9SPCzoz>AgQLEB=8=sV$Rah=!717Cd8wx`Uw4mu<@-L+3xf5ZA~<>d512C~B03G*GAb<>Md?H@!U z)&9zX0Jw8Puv!D(P*#X-9~C*FQNnW{Y)$O7g!@vkf?ZDnF_GhPHUs^37Jdrp3U>YK zn1>vg--BuA4O-Hw4ACA%M1}%(vV?WbL%zt)m8M(bj8>J}?FC5q=6n0V467|J`wp$A zp;B$4eq-r@#dG+^g>s{)I5xRX(piAr(`Ecj(#_ zqTV&_AZ)G_)u>|9V7$&AC^CkpYDRku-c-D4#&9yGa_J)uui;(aTx5*LsJRWJW|B2( zd{?7_BaE0E4<9l5hnz`w{FlSUrLT7#+<}n=Q#og+Ypv?5EoM(m?cK7cs?n1U*CnH9 z_+xu&RP=RHFBUG6omUXKVM=JgRrjnbr9uYY4R7);2 zPWkl&W7XIG{Mw?7bZhqabra>dFL7@f*M6I@{`8Ia>fh5D z{nDI7sGq3ED0g@ae~QN#1AUEkb~r|h`@#O(hMSAUNk)nfJcQ5A;JXfFE=zveO4hSi z4TTy$8UH*6)?xpV#d{QWaoKil$_8cenyWBay!FcB4L^@r88xNInriV9roY@{1WC{T z((;e=sO6uvD(sg~uar!G19|*@rZs01mzeqGLbeh94InjJriEXKX65%z$$ly zpTa+ruBCYN>dh{rcQ}Yg;AP01^YIdygV!v)`pYBJtx+hJJPk-U>y?92eElTYtCKMQ zsEEgdy0n#X`(wLyFsvo)IL!W#_$Nn>Z&B0>pv^2Qg}$T(S0{qL@5Ozki4N)Mf$J>h z=~+z^fwg`X`Eb$k5VL0*}G6W^z|D%*~4e|`*8 zh4ub2p80VjuRXm3%IC+zv%a}{FSXTklliRUdnG>9pK|kHT$m!#%D)x(CJV~6$hdis zE9l0mGr>9UQTD066%Iac@Vb(UxntWqt7z_djHFCByy{(n-x6n^palyHDrROSd4m%& zTEH6uvj!#jdm_B18bJe>+{N%3XVr5kKr_ZvYxDo4&UTnaq2c3oF(NPfRj)h`+k;VHD4n^#{Xcl#qv0Op~=6TE#tx)!Fy-# z0vZ1!<8=_N6Zj?r9%Ky;T;y~V8P|b}MVX3?Ymp*(IM?JM2bRa^K%b#2@UO(#$H!SX z6D-^i18>(1cY_v~nVR75FPV7?m>B{ylkZf_WJ#Lg4{5qz;zqi{O7V7t1>7IW+nwuX zrsr%C8!)K`nxil{mU#5`tEufH=(eE<&ARR;sl0IxvnHZ<&9$gI6TyC z0M*e*uDAnlIXi)XF1qPvK!W~HiJmxKPG)@UfSiHyPZPA`cWMVe^mhEUrBDBl>>bS3 zKcfu|Y=cocC|Ib(s{*a}=>PHtXPDx3HxszXaEAiFVt{%eiRK8M2JxB~17qanfB(H@ z%#;_C19jr-uPtNdLkXiXbG3xkdiALox4XppJuQ6n_qDehG!MA@VE^X|X^?sKnOdE6 zY{7JLxB{~?2POL3Lo^#A$3c{rgHPwoQKEbz$O2$F_4WGO$=-1xuTciAupu2iHA2$D zp8D8JI@wbLK?Ztix$LPu;?Wm5&amlGzPt$PM0^8QyVh_hON8%M@lhObF*~;e#5+^* z81%o(CY4@gcG36Z+RG(|xC-Azo&E26jj7fCPQ`jTO5@mZ>k~OX@@$$&Rbv|>C7Urs zwxaM5JN?zIY6wh)=7=L%s_39twnf2jB%D-I73~+s+gWALzYUUv&6}m1#w-5@ zOi%Et%mQ!lhSZ8#=}FG2bASco3v{@bBVVF(;oU$2JfmV(7T|et_zJ+=&AuM6?21`= zfSnzORRfkZ`$E79DrRYbofU_L085@d7_gFxSz`gqjl(eI{N8@{u@$o>W4gIvg0t$( zIIKY!m$46P-Pon>59wM2>H2h*lCFHTpa&*-fsH^3_lwH{1+Mpfv@fSiOxKU5ew zPYY_Rw7@UDW^~e$Z{&6X<`(FBf+gDv6!UFwIKHME+8g8Nc|jhbytU{b+8fk++eH)EN6- zj5k5+2$ECWnE=5O_+Av6ptlHu=hhLyj7uZndy!>=LIjaqj=X)MTb)TW8yTj%4dZVe zG!@5RHE{9zviW)@hU20)@$Y4Pp2Oz}d}uRXW`6AR8SRH6*p!z2VA^9jNQ&8G)_!zg z?x1%5xpB(@L!lBBnwA6fBF5z`bKG$hD!_IQHUP4nRoHz(;(3~0-lzpHiprkT?)>HV zxw!8GI@J&TKW4k|FXL`QLN(bL*bW^4F$rw6Hkl=t*AXUWZ?tzL*cTOHOycawo53O3 zk&z+btep1WGeJ`clD*gqpho8UhXnaLas~}wLpaMP=MRa8Hkp-#v5RI~{+sdE@%ZS# zH#6ZM_8>l5&g@c~X~DHKkqhH~_Y5`eHIxk33R5{Gii}w>%tok*^Ju`l!Rgd8Flu0WJV85m5Z1{BPi17l!t%^i}K3oSEjmsJ5IoTI2auqyf1*G;k(bIQP*sAvvE zZibebCoCnb2jylIX6drYMq!3tH5+X=3e$CWg=UOO)yGt7#`Kin@Tl&F<9=vx z-eOpXx_hA*w-}??y-39W^_e2`Q{b}Ct+NS32A}#2u(p$ z!SC39q3no3cW~@8V#2w&#yg}Lp&bYo8d01ObsZR#VvFh%Tc&mrhk&FL;78 zK;NEb_GS}EL|b7GrD}BrlB9|W$-kji|AI(|I`_LIQZv?)v*IgoE>OP4;pYfhAvRuu zRqT*oor^<8@w+KCUPE?;uRF_aPVK9#=r98aBrVP=*g=?86d{kWT(mM!8>8h~$u5Kr zAc7m47&dak4Em9x9k)_MRVd35ei8uayw$f4c7*={Wrd+EEt~D;DBp}Uxd>BQz+7Y< z6!ox!s37VA&p9CV04N*xWm0#|w9P_siIMu1`u8;mR4e`aB$6at>Ru>bhrd6qsbIN)GI?k^m5DzC z17AR<>I!jl9Jop)Ic|gc3in=@MFu@Q6X!*CPKw1F+4U9H*9U6d+i1JPE_crRE3{(O zPTw%Z9eIN{7Ze94rn)N1X=ObCh_%S33E$ndpg3zqLd7p|`8){NeD^k&BocgE6QyB&rb3Mdd1_rG>WLG+C zhQP4zFV{&3ps^eFPw_vn zobtQ;$1FlKklxXrzDT7bfFZXTM94^L;?Gp+5QAJ{PoJRDQ?w{H8FD`+h#G}i+yvFt zP|a!W5bTk=&YrQq%!s9>sq!vkm{%}&nGFYv4dG~oR&cLG3$#M}WIyUE8(D%9rV+$} zP8w>E9==b#XgEc4@gX*QdWNJ=JwxFf6hqW=DxXhP&uG$neC@^8x?0tYGnmpvBE(65 z^e?h9%pc;1Us!$|bnl`VXe&Ww(@R*w+kD2PaVwWpEqyDdOF+z9gEa`c5`qQ6#;}J) zwO9OrS(?MTlx7pU6_a-)zv7of|Is<2@OWh(-Q$O@n2u*pU=#Y+zm4|RWY`eQn9qzX zQ_g7Eb))O$k+t!YcPZxt-&xu!sKB1bX$wT@Zv%HV0if~42Ba%vY^8ULn8;nZ?K_- zxTVEl;6Q+EjBB=u^fOKDD>(#;?dd_4&LNP`bQ-SgG`~vc5E#gG>LR9(lj-q355oKd zP8S;vCHX9s9UG6i2hbvU(tz1}$#jm7ub6C=+M!jcBOqkJ*=WOIsg2*a6u4AYUKN@N ze^l3^O11AD>4294EMAabXMU_xB<26$s4=jB2zIUanZX*snMxe1)%Qr8F^wP<8oA~t zCAcd+QgAI})ijXAmX&cqitMt?&S4uUd%lz4Npm=>_CW%nJsVKkn^UEJKM9(%A^aXC zQ;9U~(GII^MJ#A9bp6xLbbDJ=dApzX!&KV?!t zC=TPNpF;aGs*KFSyt=}I6sSkE`AoK1AE{}95VUCFj!IpEU!o}#%SdV?>$Zb5Z+yn{u>+t%2dX>Kt^-lrX@Ox zv2T_SgT@=|8(sL2quA-*>ot-;`s`^yLYN`08OkMK2ti%dACYTjcMpC4rAgRV7b8KMB(U%_(|L@~<8b|Q*Vo|{`_F=JpSV!63TeEBeqKX?_e^?;E& zk~z>Y(07dJ$Ax!Y@)=0uANxqtduHJ^P+srw4TY5X&Y~gi%SO~A0#K5Qoa+$5V-&#H zOv=Q1`C3qAsxzfI`o$vl8bmxXUPgEUtCTiFC};EAZqsri;i#dP}?rX#|h`W6`)dpOPKi zJ?sK!3MIq0#Zp7pNEqkjrXhq$H8kc!s-ap?;b%Nw-ya|3q9VQ)=!@2fMOai|;*R^; zy!tdPGJ_-tpB+ZYjtpnIX3T2BdZ<|(b8KJmt!y`q1_bSjB86Y1FXiHbE%v3cwZ1ge z%jWre7wa>$$nkD{MqVV9|KXf30juC^7*PNu83_x6KUls3!)xsIu$>M63axBhHJ5+8 zCz96EZ1Nl?wsOmro`yu3a6p`Kg?bi;xX%gx)m3~1O8Ce88?i`|Ha@1TJe#R^*#0oQ z;#l!X2Uk01fIC^zt;KHQqERiN>Da>Z?=>VA8>hp=Szl~SOvRj)4qp@eTLf^Oy`V5_ zSc>XcEZOGoU@so<9mDy>n3*cx8k6Oy#3aOhFeS#h!-#`%`ZS`BIT;7)uoUOef#uHG9a*eqBXgl!68VaH_~Y;4n9 zKO~mD36x4TUsGvE>g@BerEk*z7x|qoX|wVBqS1%(`=jlO-)HVU62EsGiu3#28UGc( z7yjc9_`M6OBJk?J!SC16jgsF*q_<6e4`!GATl}u4d>83WfyUouc))uUANzhC6N-&t znO?mdJ4tjImC5zjKM|1MU-guzANp1H>XC8sjjR?Gnqsw)X|s)=1LUjbW6A@P_u_KI?rB zD+e77&=XXT*N1OmaYpj8t*v`V&TGJ2#7_K3ImhIP2pvBEayN~KPkJ9+&?cO4#(=BRNueRKUc1>_s?2b^N{Yt`{!u|_;2*j9S{IgZuL*1Y_eTr zS^d-W>VMroS#lwcnSp`EI099*(^<($qBwXH7USh|F^+LUZ%VPz->Xlo_88twObr{; zxqe?L0m1SN*8(@D22Fp*S+yLv7y;LRq`D$DJ3M)j>IoWh-r&^gn1Q)ZJbNit2*w;Z zKsY_nq>|HvOC8qCLVOn2O&OQr5K!AIwAWuoQ@@f^!tR`%k);?0a+=M@%1vpgiPhor zA<#epk>S~Rlq4sp8G#F}mNP;-je<`(hDt+8k-bWRaMZR+&uJ;3r z%KFz`SzryoCjz5ctQkfdw6IyOLX?EidgN<(+KU{CxmPnMN2yxx>D*PCj_OX0>8ixQq#<_=;H992$3N&Z48@rh>FTQQUzJ@&M_aQ1!M^xou zn!7->dDs*^_T76@B(Ub1Jt(&3`eGC2e<;r@xOg{m9|n#$SdP_ERBZi}k_7jvK2~T_ zNwZVnNpF-i`2oZh1FYwmm4B^C2%?E@%yI;NO@JpKr#VB;H$tr}{dix->}%=mIHCEpLx4w~3Wq-jZIh0b0o$2ZLse$iVECfjwvl zdvP7F5*W+N^t_XLy; zFG+pO|9kHjKrDmt0APDo+!@7EPb^2ji4Eh}$QE^{I_8{Zubc89hmyVe$d|F|Wta@B z$Emm66>xaS>Ma*|cU0d>)NK2yra$$4=_5KIazTyFf3F$z3BLaoh)z;OV+;A}+kcPx zJ7SOt&>u+_U+mw$Ml8O(R!}RD=zW^iB zXTRn=CA8l;K6%b;csYW(FWHd9+b9c-W31857zGrW%Mb-)7`xGGATJj6neTV{o z`4VvUbL3*PiVvC6vIco$eL{XWi0 z4aA8@uaLuJd!4&cDT9$?K}YTvm=}WO+s&GzVhrj*ffE252$(60QIW6GCnJ47)0N~! zMPHRZ4e6gVU9})8x~lYl;|jB?ByRlt`Z;u%AVV5}TqX<^kIXEWsmKKPYDl`*rbpY`xEy zXt|5|pKTys*4ACh(4@E_RZ1A66>2z zD8}l8s@VuoC;@$7}~#94Ff%Tp{IHn-10HI=>^+*eKcE;p=>%F#a|%tt$ifeM%=hl`$%xM%b<|<^awhu z7E3^HdE0?ezMVc0D`XM=^ToB6|NNv(dOSn$pU+&&*3vDHwHOYOeJLjWn7{@jMK<_4 zxTw(Jc<`-SV6hG2*QK@wK+&r}n=!CjxuwQq$+E#XNiSU_QE`q0G0l=YK?`_ z^EYsrt-J-+eul{l?5^c(u9%yJu|6Y1bGm;(i|*Kj{tFhvlX){6Q6n zU^+ix_T`^w4^76#h_rX5eZ;M@PtbkGSwItDF4VoDS)RL+X4xn~m(kmmMG>_(NC{VnAQffXtk+-vmrz?x`=R(}qK zs#zBMB7PDl2SdA)tif>kYBd-*BVxJm_MH$sY{whpKve#j%wTPcICGGvF1ZKN_$L{z z_v|Li4Ee^%U5(3*upu()Q?*qkonN?(5X@~no&iNsF&S=nb<{hUcG+h(G~lcOPIxvn zvByAjVDXJ*fJ~rv?5fG2KwLKpaXZF6)Y!C?n)Ug7tgHAG|M^FoUs(>mcAAd!Nf)J9 z?@2J9nUHEvz#`$IbSuFP3~bU|lwl??JVDFQ>Ri-pU<9bbOoWlBWdJM7!s>+RmMjTk z6-Dj($I^7tbs1O5S_T0J@B!5;L#Tq~NP`Elus>oaOI z#+twnY|I^mX`t^#4@2&uVlht9kBe(C?4??v*cU>jWl(jF^P)EHRZ2rt?oFD50rN_| z=q1f~UuTcr%k>tak&ZI`Kxq~tqUSK~24^$O+oLK-vNaye`Qcz&BQ(7RGHrAnz%MmO z2kw-Ev@teF-PqY6p?Q#TD3NsRTS2KreW#mBCNQ(v;Ts4KRg>t1TZ3ds9d@-IAIP&m z)0-ow%DBhKIZ#+tJ05g!7dq{9j)2(BL0=sU&4R0v8?k`*}(!GT!`2&cJP^22Y2^aLy5+! zIg|v=GX}pMgNfMc9g`9Q&3c20^EsxiDM` zA!Q-o1%YbLy$;`{SVeC}MlL@)zMBQ#_F2RMcN(chjrjuqUHXN)1HU9-G4V^H@4Ub- z?GO)V6lflOxQO6HSK82RcJ3}aI?i3Cp3n@ftNcVC?7YoD_ z2kG<~-V}MiWqbp4SNaj;@tZYL9=o#9N*<$ITgl_`W>5V8DUUW`%!Du++HQDR8o?69 zoC2`PkC}E_ig*X{0}(IfH<)$;NQ;Z#o!#RMl6@@kME%qiJZEK>X zXj^F5czmw3m5!iqW>?eeI|e;Bt`T)CLmlSiCsz-$)0U%E)OhT)?3h@qc^w)v)@fMY z9*4ey;EqT|UtJ6@P~>FQMcF9(n-A>tk2)$Qud2wF^Qf9Yvsz7{18mkFAytn_n@Gj-D1jDoPNMLGRBD{DAb5h{QYgpq_*o}P!p z2JxRAsrtC;%9%D4duw-rfc-L_=g{3qP6X=^?>X7!_XEx~`(9~0(knz#oZcz)GtvNUMKAf={H~qe z(vC;uuSw%!{>HXAy!}*-A4;0yY9i!m8I zeY4x)@5fz`x01+aoU=&NK(8t$Zr44Z(#Kl-TC2nOAZxY$#o3R&ZCVMLlIC%HQO9Md z19an-8b$jkSBY>lD9M~+=7M-=uo&@IurXdE&l8x7MX(o5Ify$_JjPrK%Qtw0t^dzg zl&#+rYc*->&uaDS5QQO!YZJdDnJ_f@4aL1p|u_2Jp_7= z&|bA(!Hg=s!K3L7_A>b3N)L7?b+&Z zxTC}N$ioJ<7IvZA1XnX7|4L7&|IxVHm&+}85ICzX`-Q)+GMckKOecgy%MC$jHCqN{#)Dd-&Gk_x}1Kz-vop=v+3)m;u4F*DB zqcSHIm)Q;xU4UNMWA)s<56PZe*0SejEdlxCLuMEjWOBck9ec~Gpb9cpNQYN2_o@cKQcxOUV@z28idiX1{yq$k z@So@j)S`W`@YLQuTlRP55X(UR=6Vhk^r1eT8-7s+CDRiY{=}Pwg`4TCi?`lN3J=h& zh!ZYKV#)V`IW~V@iPxAx4rh3b;c{nP5`DwRW`h_*zVsEoJ^ z!e%Jv1?Dz7d`C&qfwTKmZ~&{}VA|$7yV@DvE^Z9Bu^vcEm;d%EQc(5>b zN2ErIxs60&tUV7Jh}}IC0)V5gW49hoyT`oc9WnK(q+3N1ifu#Dp4y_`>9~*JT>8GK zKr9i%qBiEAHT9ud(>6%WgRKjG+wQU9CAwgqR0-BSHXkEF?Tg`F2Hayq|5pKb#t>kP zKp`553e0P6+RaXjpG=Q~FcstWA8edq3TWVQ^nMALwJ5dQ zl)f71kaD*U7#lF8Ncu&IVJ(d>>z{wXC@7qDFP91Nr zz8flSLEPT@BmZmW3m8I1*JOSvf0uJ(%y3jAY5-!yIHKUw)pZd)-IKjV_^)paH*Vux~1>DdV_s< zJ{Qf1`BtEK3k14DdR3aWDVyb3Xs019=B`nm-}w52sg!kL523h>8z@}HU4Fkw6kFA2CAx!n$ns^RAm*01H!o#;9hUxzqf@z*Em3f@R9{T;g@n0pe+TSc1_ z>)m>!!(Zm$4h+@js~TZZI;+zSb`xX{C6T$lp3frQKRaNf%YZ>XmP?XmpT zMfxFaNYV$+d%A&LE?kB>vJGXCWeu{yM{S*nUB1$AuqWdW9HGIh31X{W*H^OQ-C~0iO7>wVR-K(cjvJ_i@RU7#-9fK z(Sw11%zcLU-juM1^7Gl*Z873>6oiOyixJ<82XXd8GGc8iS{4(bUD(b7Bj&C)86o4u z#pO@L-byYox`c7_>x%L(#ou#V$cv2r zGYW_yOlfFR63$284zMK0iWUO?^`zxvtXCB+ zt&k}T_2IVjQA{!wjo$1Owcn z13@?;@L|^S)<066FK{eX&YTh~rKm6ip(g27G0zux z$Z@N?RfUqOnmcTfUiR4TERbu-NyHZ09g9DQea7F1;*TSV&Yi(QMDgeekiwU+N|U!& zQAqnd1@5S85OLK8I3lCxPh5Zwk|_a zu>X%)prus&!d$-~mrLe?6GP=1%WT>9Y)>%TzehoGOA0hB8FKg3+FCQJO%gt*xn#si zNJq9;?Adz!`y?!rWyP4FWuUCN10RkvwBgCNxG<{~30dTVorJ$4n><_55us7pp|wr2 zAM)YDNOo2=!lr{3!sqhjhKmMcBl)t;lbom3+}abVUDwH!)9Pq@(UCK<+f=R)M<*#cY*3Cq#wO zGAk~BM8&bJMacRE);reZBU~oA>9eF+4jmnv&|m@3g1}94JgG@Fzyw zaV;v&9)Ja`q)F3V(DX^m3;dbU&bUrU--Q$7^UuQw71?!}j>u8*QprsaQAr}K0P!_X z$kw+-|Fcp#$LKFX)=QZcJKB=ncQPvm)w%R$&B$|B&6OGQ_~Q(9>0)t~jl{9E?N3&8 z_5hvmgX|KEYFp4Z)}+tDO47_qdZ3b=oh$Js>ylEzm$+2)khPj(ufw_y=6=NWj#a{r z$J>&M11!)Scq#hj*W$t|ltVpd`J%*+Xh8T~C|O8{_^GbHBYYgKKfIj13BQ1dA7EL? zKw`Z2m+u?GubS`2negw-_YNjJjRqO;4{lWXFE-!z%J&W7ndbX86W-mdug-+$;a#l4 zOZY}Ut>6GwE(wKuvg?`F@*x-w^)IdRJM(OHr78`cV77 zaBQdA&f{QmC~k)BZaZJTYPu)zKLZ(t<%=z-M|pR=&a&jr>s;Z&3a$ zm9$+?zy=82LB+W8kV8~@gs?FL=1L?@4^Bg}*H|mdG74xsEK#?0RKT8cR_;U-y!z`i zfrX!L!BM*1k(;TN)$aho=K1;6!veFP{x-uAW-Kubr3&628mJzG=C~`cTu6<}*dm_x z!=&k7%3YZu{o&XIj#r(iue0(TmSQ|WBC!(aaT2^&L!9e21VTFl&7)^r zh0AgR#IUYMUDt;U50)v9s!U3cOjHjUk*m~0N@Nrt0yB%i z;;z3|Q{s{vi?CF37S-G9cwr;%8^^en>}k<}YGgv~WvCr%6xP$C5f3VG5y0Lucr4u& z#qa>KuU>_6qx4)D9F!wF>#nzu5`F~#Tx-E@cDfX`^f#2Kh0maR#E`_?ucg)&rKFQ- z6+C9?HKaHL=Na?_`CMauzk~0OY;flJ ztkpZy_8_f0Mz&R^{hRl`$MhriXYc%`g1s!Sc3p}mPC^alcgXy1vA)!T4@^KAZ&5g~ z@+(Oj;4r2S;=b*D=x@Z}!K)EMG*<&u#oU)D%f;1LcrKT2`3=HgX|?N;A$4|w5@=FC;+*RSGgDu$K`IwtX13&ROxJR zL#^RbrVLNraMdgx`G6fZ154KxXnO@~!8fIm-}DqXtZPGMgds*>a7+c7H6N8MLM6P` zyhJ?LOU`UC3d)!8{(9$MUSkQtw2ZjFK&`Al+na%bQNAS1JFPHymLskJU)9(*6FL9l zG`_)O_%fSUH4zTe=(awz8jElg1OdIYsgDwyxt7)o3(VvKd0-GHEef$UJsv&+dgxF# z4uI>!8?Xu8Bo3lvyui!iUMhz^kBdko+(2-S0yc*06iF4pWGVCU-H7i+GH00^O?5Yj zf8hwDCol(>g5i#iIl|!^fG_NaoFAD04ZIy~?)P`Q;qc9#4B`uif13$Erv?071#fh~ zR1cIlIQ+QfKo&E+1==%2Gv?Hj105iGekWJSa~iGpiFn5xf7+s_+0X__6AEhZ_kxKu z7Y^98^IDWQ2IUcs4TyscfyM;vPBkagAaJ?~cF0dk`N`iF6rGQTxqRow3NXj+mRRvO zdn?v?(Kg2R6;wr#nq>@jX@pndOnoL;CCg?5M?U5E&g+v;N-9qi4HCg)W@ zcN1T1Mn4-Po3WxPP!QGCDQ2Q3{Y^4tx&0LEW!wF6Fe4rQ8#JR7T!mlFccrv}rej0x zpt$`p8KWXww=N6C+U+~pxZWBMDwVmKv@-0#4XDSo)JfCZ z!yO0D1Ac^iT=<9UvfB9l6%BzX7~7#}2mXYJytfS7u8WaJ-dnZ@57dZila=?D!7);a zL@pcEhDCtvsfBL zu}KeSW?)0AXGpCx$OF*uD~3FGMkOaIUqk|4qE3gyhhOU+=sHlB;Ok-fLB7Y@^~^Wn zkUjbn=_*9=A;U*&VPza-m0LB9$&Wtfc__Y_C>N|r77!A%!Kdb`t zEH){<9W$laDv_L3mjf0bv=Bf{9|h^SXCP3MR52_CH!;$t2@l3U#5367!HbifZyb|~ z-*`JSbI5*Y6-}f-O?&4XNhwJ4W+n`&cUJuhn?y6tpiG42ZJ;gh`{9ZP8he+Vs~Oq# zuSqy2e*o)#bN|L>uc&3*QwuC1%|RS3rcVxtB(%jIzwqE|nHa@wUvS+jej)7yTl@kS zp)DdfV)2mH{&^Ot5NCfuO|?PXd}52;3GC}tM+V1v$@u`AWdBSHV z%!270yfWQc`7YWo`lB2umujdb9=Zqb&CWu&Vs7)Z=&Y|F&T{++m*L1Rrl*aN2~Pv^ z4wj>s5K>KXXZqX7!I*@j#X6|hNVhmelNN~+QBtvSn%5Xg#=X;HFh>#3nCk1rTMI!4 z#z@t0C}H z=Y|(|2s^8uqyXS3T8l&MxohXMmw8F&$UWq>yrgpi9wFAbIHp@J;Za|zxbh$9>bm5~ zNZ=nP6_6&9H&6hQFGcEV(5`lG);$wbx5^s3=<^J9G}%0CY`MCmfh#Xf7T;V04)RLo zMzZU|X*QQcF`6rv?FyZeObI^cT5dYn=PP+X*J$1u1=UYeR!VaIC-c}wUQ&A9*KA{* zc)uJBgxDInYb8v!U&3VjSIkjhsAxtuRy;170~Nv9Bk);<)kOy&()Q6X{}nRh-x>`a zj{Bq0U>QK+2PfF=4c_+-HG?_YJRf0;H<@Y9w@U%1O}*Uw4w>I8%~wfnQy+E}Om?X=)-~qAm`-8@bG1&zWULMBNa>;Sbrgn>`7^QrU=#f^&Xq z473!Wq}d|@D!^~!v;grZcampk1H>P#XaVBYjqMp?H8~mJ3HAb4#C~BWc?LG#x>lg7 zmKW;Nh)n-3;A&*{9SBQ}mcKo_j1WrmP5#9I1| z{mwxR*hkv$JmqbGYPh$w5E+qN4|TsAv$+h6ZRiJs3)d%b1`A(=#+rm2!jNG)$7uL$ zb~S$bqy1{yHsLJ1D*eSB9P!&Y^Rfmhgq;C|>H~A5q72qFr-n+*&87n&ybxJvCK6s~ z!sioCT_}H(MLHs*ViMLT%zQV27#Zp(g_bklNIQrWM);FLA%e2)AW|zM|5gx`W(Se- zb;<-fBvy}y0Wk!GPg)d0ZTwA)Mtqv_(an#2KBRrIii2!i*oEDR*nDNp_gGUOgyKd# z!pWcjD+8|z*2bz}AQC(>;C`uEE=;Eeg2FgG23SG8gWtBn?*!$>6060CZ>(|k@txMV zD%+*T)jKn+akWyyIIc!Wm>gFx!fQ-jZq5O-m)OVE+-(^UfEHs4V`C|$`6FyAi}xd} zV}p3JJMESZJdV$qonxk&V+L-Msp#xMnRrPXdiZKX?h^U(t;B|lJoo?(UocX#;7H7BgxDd|zDMKL%l6;X7PJ1Lkhc)o zq>9K_0r~LeADeUJ=I`sY^$m3!S?WCHrn5k-ylCts>>am)CwJn2c5Ol|V)Ua%5lmdW!#}tSAIm`8dRF-gsatDP>(HAb0U#H zXa>E0P~?{>;6?&Di%6AUP0&duXdOYELrj&wU(}C{*AwPXp~V%v(&v|sg2m0nhhK}u z`rtMJ-X+>&w%W(M7NmyJcT?Mh0DmWj*A6(4xNjzMqDCHW1=t0hrV7=kTNXA zj|(K)!7B$RbM9rc-~oU2Kz|4Bmc^xJOl}spVs(UBUcO4-Z%U-|g2I$xIK%T9$V4NG zSPwbJVA2ogsI^{Yh(N0nTmWKKvi}ZLQmiWJZdKA%Rx&(2R`gw}=x?7w(Mn716*E=Q zzA0@L`v{9Y@Ux^nR_q&CYF9eA5mPj@ z>u40`>r$jQTWb@no@O?QWJPBN%DIB1DPPcD@maZSweLNYlZ5awl#>sEnLA@GJiv_f z$s@MXcYDRlCiYVFfL>Ga#qa#}o%?e(4{L`XD1);&8~%bplmVCQ^{~H%?8W?_xW7R< zVsU$?QJ4-}p`JH)>brPx=Qr?=K+rm16!B(FP_XSGC2A@q{K&a>pQMNUlM;EOYj>G*v+tXVAr2qh3TeMU8NkUGU#z6Qp8>CTe6U&TKg~FAT=-^Vi#)0 zSgNhgcT>M!IaXXE7e|G$tsS~4mUN)ge{KP{F}jK-uG3=<{}FOuC+6(;;-Hj`3cG(n zD;qJ*?)r|CsLr>IDv6GmCi#CfiDaC{GikOikdkNfx5@sh8!-*606ilnORWP6JBpX+ z_%aHSg2M?>-znlZnJ{uP_9);hkM;2I!-|JsKLGjRI>qel^+VCwQl3X4`W0DY#HAdT zJKiGN>%c!Z(LW5k2@vq1w?V)$6+QI>Rf->%(&T2FNsCm{(WrYNl!=;bLZagk{ED1O zg}UF)jK9RKwR1Dj^*#DJpm(_R(gM32TFu@h@T>swY3Lr9-gV>)7Uu<2PW*;TUw)^X z-x=mNjARFz$e_ci=6l5q!CUb?O0^z|2BfxNSX= zRAKv4N~!cq!>e}c+ZpO-a7?W@LlcMgW3EDZW(odvnlW6{5IhfU{<#T@JZ~SL_WSwM z;aqYC-hp6%L~+wM1Hp+pard!Ykm1LWM}f>O&dT>W@dxvF!RnAl3Y2x%fL{@So47t_ z^MQh-0!%?QU!(*!x7V>B6U+_Fm;3GYW;o^d;-o>C>ToT9dGC+9irlCWtQv*DtIO3k za?V37bmW=`cfS{6pvoD)C}<##Kszfp0UyVpomJ^14_$)OUSV!@hzAD_BK_gx01%$L zd3^G)pB%j})BMR%5~cCps^FY-9N*mZk7f75w$y6EI0f2qpjNXlBVoP1wdT9tHHSJU z?2n)OoU(;S-3ByhOa7fhpIaXQ?`V;r7q>b3$U~pQQ@!}LkjNPPR8#?V^FNd6D6NYf zdn|pFly9^jT20FI)D>mQkzTCN#*SWac4j(8Fg?9H5(Ya8Ym0`ZV^mKhL+N+{LvOv` zWGJ)o{M19I48S)|F7QBqEXpNjA82)4BRlG7@4^pp`M!bi_$q7vgZ}eB)K6o@laKs& z2C{W)1itfFKfVk24ZW3NDyyu|V|uH6rX1jxo+1Z$UQ4}YjlWSPfw{XAwP0x@e_VA| zs(6!>VXri%4vNY2RM!r@F1;b0=(2O-JTz{#;3-1AFeTE%dcwStt`{P*eNL+A@B*7q z2x*L~G28sBF_5`^;Pys`aq;eiziF5k>(NFP)$VgpsNN;Q_<2@cW%mX ztVoF9fGAK5*nl`EYGg-JG~@OrSS3wjS)$wleSkI%0#jS?U&fhAM$8%b1XY#zqjo8_u{!G@t?Dwq^t7Ls8(AWP^2Y0UNNV9|x?wQ~cMEY{299#2T=d7#k%< zBgn?FAM-@BCI8lam47&1HSxnk{}VyR_=NmOxtzZvHar{eku9LqItAU~oP4+cE?C_n45E0*1*aS-SmEnH^T%VAxGd^@DS`U-2!r8P zH-3A=@KYi3*5#kcCcSvMJ`R+YhN{nS7&}yaCB_t9*|!<~0PtAau`NANl`ydk^p^i>~3HR0zcZq$wZ)5s1=) zpn_2n39zdPMfzi-gQy53VNvvP-O2`{SRXssyJDk=LIO&crgT)mwzsi>Adm#f|958Y z-E89Xyzl$H-~al&B-75EIdkUBnKNf*?yYCCLi_o(!SHHJ)Fzww{>z=cKU4lnQ&l#4W+b(tu*FRhn-inRQC1*|CPDW9?Xr(vfy7m9Jjv3YncsuaTG> zfMs@^Zv{CSOIVRaEAvNuRoYe8oRFDa%G{AgF{go{XoVOZ z=Jyx!S+NpUh*k{Ak4)%3~C58%=gsJA1sH zZA;mCcJ_64wpM;tu0#^BJKB@F-h&ZAt$vZQUhw0_OftU8uRx?NmOv|8n?hWgUFT`b#! z>cuTe@3G7F{jDsubgW&r>2GD7O0%Vm^Dt4Nau&)qE|-(eF-gl>aCj*X;0*a$-Am82 z(a1HqnC3%Syb|kQEIPDt)JTXL(C<*2>4m;WA&Hf?O$BT6QF%u zNs`3llK9z9gd}msPTV7jbC6pByHgT!i$xOSCDGYVBt1exJcUx?kdiSZV)U!|#t5dz z(=1c$DZFzZmfdrR2{PIA5T`JbCC^MrKvt`Cdbx| zbmv4lF<-t~P`z{0BIwy7R!6_$9w3dAnQ=H4&a8sO85GN~2Lz|MWo*_qtAfm|4p|_O z=INux`AaLC4Jga%kX;4RKFpNX*F+%aI~@8Wqmhr^r?3w0U9R-gUGsb#7_8D7yH7t-zl_A?dqfe3w`3mg1Aw zi1(s6VodN$yWczJU(3t(HP{PReO$=Kohtm^^2UzZV(1_U=ARn_^F$Qpb{j^%9#b7= zb`-{8!)T+S8lK@%nD#b|ULdN$^oYXLvSA*Fxaw_n`u$0p=7YQ(#6p{0z5Hk>(x*>M z`N-tDg0uq~#D6iw4o6GKJ_$DkbLnJw>=)5}(ns7@VV`t!OTEPyQhlFPWw2ED zzv|ZqN#WNwv1yt=cdzlpK5bH*C5T_P$fUyIiJN10R+rIo_5C*c)&G&dV@7yW=>I93 zehl~C67_>TFj=$d^7A8X(tLbvyWWYN2=(jChU{plUnjFK>yB;76xaJR&8s@$uQv)C zaP|IEvnwUMMQ8NmZMS*6krMvci|(6&D9Rg}?X0icWw{RBPAB+r9{J6Y4dLrdbEgsFu0a%|tU|U@J}O>Vu<(tG zb{Yc@;I@aajj6sjT;Hx1|bA3Wr-5nwaiuPnRb0&7Zx-Ck1Ks@6&6~ zcKaYzFDWU4lwZ?3D%!Zp57L9i?Q>EMc7)emawG3_+;SnuySEmL1t^;doP8rimXnWx zGxMiP*Hq1*s6RpMeSDZ(vqF3H7eV#zGjjd6Rr}~`epZgxu$s`JT^vQjWCOX}Z_bUv z3)}JoTKZ{!cb?35W|8p~&q)oB38KX=Fa?)Uz%vsm=n&47g7)Dne@>UV{=!2r&s)qg zBWHP0BQo5IVzY_k+gfy}dbzdvg!W5>Clu;e7 zp~;=!vwhad0elW2A*(W3M1C@o2?x75i$)3uXZvgp4oc;!0&Yvbj&OBWqO-XQ|D)b{l~wPWmGGUBgB#`@?Y-rf-<6eos2To;VABZ_rMMrQ}`Fd}G0zrCS${ zq)V^yPp;5N=;7ZJc3jeL#l$5Y`|m5#3;D0wd`Cl1%?)iq>Yu@}Q@J5rC(9~ztNxIr(=v$phy$v#5(915sJv1h% zyPa^`)FgEzBYf?5>2PFBe>Z<}fg9bRg+V~Pq1+4~tuG)~)CKke4cl-8MK^LadCX2g zT3eKm-mgZH9Qq~M!aS)|Lb#uhf1~%xsHmZ9MFxt6fbb2b;iM;Z{n48E1}~X}wB59m zj<4CCJXsCri^U_jF+EcFoOCAz;fIe1-3^5!W1yvx(9V@sQVpi)ievO`aW1-!Zg8{7 zXmA;!&=wv+Wg^_XZkP*%3>X*7iICH1#B!leiZ+Co>Q=@iok)>RHWYuxjWpCqA`SZ! z8$Tq;} zm4saIx0`GOKuxmcG?x4|Y?u^+7*kkgo z3yAtsygqAi12x2HB_7L9>+p*O-Usx=Y}oYMWZ^>B?aI4|oNx!zP|`erz@D^Mhh{E* zVffy#=}IzbcAw1fSBfP4x9zF$fT=KgUlnjDVI_U3EbV~5GjkMQhD-zf6*MT6dT3G!HGTMI{g+B$q1YW|M){6RF=oIIE zne*d%dtRJzRoy)=Izp$Nr+#+Cl~=u=;Hxq@@d-Sla46>{hxhOq$8BpSI?^^dLObLT zKBp+LFgLE)5h`<}l{iA%93_=~y+2KK#BIwuS&~rDEhn@=Fcu{Zh4bn3@>;!NAf#kQiPsQ^kpc@MM1Q8YLKE1#x8To&()t8m6`&P`kEEUKU2EXqzu zc6@x1^WpaLzk^onM;|-Nh1{aVU9hm0BaLWI-DF2-gQMhhU+Zl=bx+sd({6ll&7Ylae9)oZ zUGG@2`~rXJ(B&5-QP)wjG2Rg?F>v0w!iMG?KWPg0ByxIhUrY8t3>pN>1-Ru6B-(mqdBV8>J12j*soh$L|_! z&r%Ps%PqR5GV5ehu1nkiOlw#(01pkUmT%5IdOZK z`R2h?WwIk~z2mm^6LUkmoN1p+cd^E{hi=+Z(92ZFDQfLY=us=z|7*d;IdMB9vrbRu zHGFPeCUXwso>r1ySN~3X>&F0ha1N>#m1J|JCOh?*qiCQ#vDZ7iht4?C_^`MpAg8Ej zFgK11Go_A_ioV|OCg#MI3JnE4Y-)>=YIFNb8tais0h zBGwYvtoa!qWXEmGR!jGBk%%4dbu@hdow8YUiX(0x&n|M({%{nvLVB~~Ydcp*bc*xT z?~&g9U8iK9&lCT(hRWJ;YikfW-sX@H>4cLdziJ|L;(pG#^=Cum&YZNLHIcJ{&5rw4 z6kbl;#+)>`)06KxX2&J}mjvYWh*4^B8&=4iR@o(dTRD55w<77D%U0AOCv9KvZTIoY zULHv$dn=N;2u5N4CG$sYN!^4tX2a-QU#lmOIlY_Zw=ccNfHso?$!T0V&4%e^U<&@B zmga7V+n82%f5{yTwZ1}@wx;)vdmA__*W`qn>Agg0diq9hMIs{}_iftx&}naRvfRWf zegtKWprsaNUy&SIQ}T10lGE{Va!D%<6D0PlKGp7<;0?$PZ50(R3)U%T=uA$igdh9} z-@qd+=kh9nKIA+V&WSq`8MTt~|7Q8(i@Ajkcpmymi{M#D$=SZ%A6dT6W}W;@FJFQY zrS>qlw^)f}`2zdD5jtnuS9&mC2k_bniOU^DBN4Nch}mwW6EQpPi2Kr!wwV_B2;u*H z>H3eV+Zjs!o4*VF?F?1?->v8MSG@ zX#kCimx(tNj%#qX5A*(VP@U`a3#;K%dCs8WJOK5bXyMQoVYTF8U(gPxmv)Y ze>4Z9B#lo=6qo76-Y3~r`g}NVJeZefoU0?UqfMXRYnnbcMogdm4)1ri=|hjdbd;20 z`t*DXRV55hTbmO)5LH+QwCtd;kR3jtkTkL~9ffs36xIpkCCnNgFU;Cgjal0rT$S_|GPf$SzLj3eSFTwm zcV1hRalWjMIlWJ*f2|chlx#|L@KuP1*VNgsmhN}lzg9GhBW~|~jh&TSG(n%Ol&tif zr4}T{!1Ug$9`OF}$mzN8|B#;Ed%1&}wwF)iX_888lK4@A`@&F#@2vEUIJ+9O=N5=> zCkED5bSq>tq(kZ8_J6k3XI0Vj5n=j-;qN6n`0z>Z?e`sZhPpdLanWh*sA92t_bbP$ zC`;qeDO;;q4!hx<9-6}(Ra;~E6S-f;n72?57qk9msE12ZOPDZ3ic>e3dwtQ{;{xyC zIX!-WBZ}p&T@$&qB5w}X z-!DkyD5R3L;rH;7>GF$SDA7lY0a+4?Mzgy!~o%Tio?)UID#6)M9&enx3k!=h`q(~7sePyX-TvbwW= zc2sUai#duM%=NPPSyXi3jV_DNyUsl~u1~=PJmBdk^@oVU9qDfNtw;5*#(3Apmrjo< zt4Eov#mnhrEe)aGWo15{YU#1(vm6CnLWrU|xI2of^up}Iy!e>1V#+|3}Nhws}XDeN#$Dz2zMQM?bU1d7f7am2=Ju zo#w?&AS1i&>C)!0BUo#d0EPE|A)50$J^>V$mx$bLbX0CO_4#sAMtd+ckHOHi3d2HE z|0(J_dmqd#n%KT_wjkJmUf{c0+ns3#)x0dxDMi`skxju1&xh*o{3H{in1o-&{?$DmJQ=xk{Bo;QdR*(~Z;SK5e zTIsxV0tY-r4!#mNn1k!SH1c`0k-3_!wVe|N15)4VSf9NioJ?=lWp6ktYG%l7e59$_ z-SB?Ca!wcpP?PH&q3j)}=_iNecpY*=SCrO~g=O(ualDH(-0Ww#xxSy~G2EZ`l@*OqP#N!DP8~ zColTu&p?9?X&Byc%JA5)^Z#oe-!tt$@mQWkAXmcUd{vFVrFH*C?J%MC=$!vZ?Y-{s ztXrk@-X&4KIpAAT_%;#H`8O>$_f+S^xK^w0HzW6-Icdz1*SI{_k>2NoZt1jsV1`5; z^Y7!{-RYdPy*%d?;=QNass*22CSp+VnzN|C+;&@@TU5}3cqZ{;!iI!PazgtQZXxgK zyH)T*HtjskSaJi^CM0?saoZ~o6=ua{WU9bD6?~%a2IZN4x>l{kMH%NSZ~caR!mMaq zd~T>iVOD%bx7nRDZdQTKe*t$3Uu{E-fICkGzvU%3a0wbNA)}iLiV>30Sp~YBsZ~qv zS7Ip~$>^&5H~z}y;w1(=4)DyvnQ@u!v*TP2{${D*CDbFN}6%D3Ql zs3<`|9hD`e{h(Y(QA@M%fi&3v2kR}hYn@D#%dE$VC2rRl8FiKS_FrhJ@-wT63_v9w zf!yv{mHn{_w^&0dilUks$4`SkD5wCebw_{KDQ^9XcEL8;@X*#c$3XU8reLn#} zcjXz`9z;bm6HNUCGDoT4k3J3CUj=tFWyqs`9aF!z3Z9FV8L98R98jwfNOD4l>E7gp zj^1U;JGLi>ln78!uTPJ$Y*v<>OzfUm@O|QT;YeYwaAG4IfG-QRfMQ0RuCErPQ4LFw z6O5t;J}OcUPvZ*?u*1q2t%7q~A|nG;unnV^k*b0XdlRN8-!I?kwC{UD>(ie}Aap$t zd4$gY3Ysnb0McYND%HbztqLwn(J?wWx|xn;XD-cFzNQyZ|G*KQGg}4UG*EeP-ayS# zo=+)N{;8<|P8oyoJtodwF+v4f)x{*Q$X3BubtFv%7c-337YMTk$x*=!UBawcPNuuU zseHq9PLA@1&j&UQw}34Twv2aGfyRlN7>5e}Oy9NadR}Z7C$T=t)2I#gJV|;g#mo)H z=yFg4(@6zex6-i`6`a5blE;)7Cm5Edq#v+8yv`;NR*bPp4>Z>VW+~6rT)lQz^jF>? z6j}4Qv8_8ZIMU5*60uM&8ABcAn~juMuSg9jVYJRj3()+eU}mgdrJQ{4Rp$Zs zPvGpK5^y$NP0$%kKjyv6USu-((zO7dr^hCXu}Kz6*6wjv3{}CO>c*M-g=*<>b`_M! zT>iij_l?ZuEaq}D5)jW=<*L9p4n1nOs6bCMl6RnYC+WQD%0F`!bEznc=_^$ds4`3i z`jJVDD!&fZF(i1(J<`9B%@Ia$rp=MS89mw#6}Xxmxt7aI5l45$VC5ZzcC;S)!!U)B z4A@MO$1x0#uTq%8FiHjMRvV6C`AFd4@r?$~b27yYQ78v z<-1aF++q+Qmq+!bS0;0-i@yJDR3^K?!mJZ4f{uL2wU>t=6J!JS9}Ee=5M^e zff3>>M2Ig@K1o|0d8%U58r+Taiz@N$FOx`?@=A`CQo9P|Ud`3Cg7dAf5yeQwmrO37 zRgP4Y97|qXYY@cuMlH~oHy@x_Xry4Sl@GA)8WU{36qhr@9y}`%c>4&I-Q}oC4@K73 zzuAM1uDs7+P=QQTnULw3BCr+LEAMQItoI_YG<#=#0}{-zEBVf1+UdR>6%xBdNW`>w zR>ML=7zSy)O5^RPypK|3jS;*?t^Yz=^g+%sLJ0T~wJ2)+Q_%6$gUWb8GV#*cNdU8pItR##lkHa zv9Co#$%q|Jv`1{2^zIS}FmvKFzUR!WPt>MyBBpWRhZB{RV$ozVS;dU*%67(>(N7rI zBn_J+uq$lX%*F;bJ_>ugflW4sD~C=E+HygVpR-7;(@^szE_5iTXlz_&;S4d&(WG}`m=MFh{9~O=UkB6o zoWjxZI?unfw+sf>%_P9w72T9?5etO70*hv_gJ#z82guu1@Cnn*H0AHVkAiWZ=>jC+ z0Sbx+e2|f-JYyli>Oe77?ovUYsWJycoH4N)m;#K(`%D2gfT9M#*C#6*iMd!lNnIfFtQV&7)N1KiVC*rK#3x zEqjwx@UZA1QEp$LY_xLg(O%|AyeObo`Cz!n{xyiX$n<&WD)POH$hX>(>8`kyl@%0P zBHa}z(u$uA9?xTFF)8<0a1D*vy5Aepkcv+WbcaE4j>0KBt_21Kcj=Cc`8xmJ1Rg5Fx+ zK&YFj0wF#5CMhmIqUs>CpX)p!aga^oMM7e~yrx#VWQ@nq5hhGv^wFubEZW&Na}f2^ z=8^VZqf4}hxwfpAj`deQ$+ND45O)Q8xN{fi@O36KDG>}*jBW()zkW4Xbsjs zC#{cG-g9MQzCxyqRj|KC0oUEslpIeRyBC90a0L2Ndg8ND+#o1eadJh&PLNExKbhqr zgQgoJ_BJ1d3D>CLzdBRG?0car;OzvAvA%-_rCK+;S`eU|qM@+AnN(x7JSIyNi{Om| z2>U6|i_&L5E28u;cw3~;H=`!CxJ}UpMHB$#z?R*J%=+UXmgsRF2dv?;{cP(K9IRNWZK{Q5E3E z=$vWV!|2R4s*7IwOesd^?wd5+MCCvHB{ZxjshjSko5ljW_^j#RFf&=7NBpI8bEK2Q zn5;g@m<4O3w|UC{1dg)8tb~l=2L7~U1Al|eg5kh#F>rz3B+SP_Ljh|q3tnG@>kcad=4RU4Q)batH#glas|j2_B!JqCvI6{0!~U-~Go zVt!hGlA|YLDN9S$V)D-ShD#m?d{h2KBt@*p;C87ELX_*PG9#{6zWI`7Hs072YymRe z<*2E~Y|q{0sJFpHq^2z|GC!o_4&jf;%W%m+UKWdTM_xL!D#Xak23x)^5x$7LJR=!- zxEdrxUJek7p!7G4{nUp4UBdprH)XSIe;%DCRZ%c3dtoF@ZuJ@Bn0GLyAK z*gZ@6Wer6=i=l*wp;rSPz+mLABfk}=MNQ=PlRPK?~W%S^PM7DkAF=h<^eO`~_B zCjtxfd;+fj=XW=_+uS z@CgarNIHf;!&M*|4DhEw`D^3<_aS%i2Q#@2V(fb!6U#_qit;@w_7)#vG?F+O zPHBs#J!Yt0Ti2pzmH$1f=EA^o&D&6!rtF1>n$0#E_Z?g+oIY#x&d?fbNIk*BY;2~d zFVk@%2!-pmRyu%qOE2I5fl#Dum1H1gDKZR5+0L`Nm(@*z*^jXbj=yNk{n ztbCGZZ8}Gmk=ggk$faSSL>78c+Sr~)IzpHz?eBX?1f~5KVyEdA7v;BgX?^_czM?=% zu{QF=E_YltZD^$yT1( zg!xUaPRB@2P=S>qG$`yQq(z7a86mrx%F;rvgo9xJvLA@x+UhU$aBN+ru}3HQUMU8? zuFMUYBt7g&(nvyBy&nJ(Vq57nlTie|r-Y((E|&;OXQ!+}$Yvtx7$IhoXMw>?@@ueH zqm#VJ3PBt@$u}W&)@9J?UbDzue!lY5`w0#=X6;5aSgQA;R;|aj=;T1zp zdRyadkwS6fOJM?;!J;cEOjUu)C1j7vwUdgDfyjzej>xs=(eO#k_SKmRNk36aj z!3PFN(SVOK;+6L$fu3ecrm5gTcmvF>$~Tfc%MWgm2@xrgiM|ywW?4+hh_e$G+}u;w zVM ztW-(3a4^gEm_6kuc0D$1k$NrcdUGXY!=~$n1sqC} zNk)`Br}9Z2wk~wD3$SnEp<$Gx-RV}vpP{7*u1k;BY6Sx1brrBH->?_I-^;1gw(rjyKAy;|jFvH3s zK@HZSkAKlIR-zQUE~@JiyY9Po-NS^+f05LzO-)0FtU@h?kg?*BrVn2VG<|r6kUro? z!30f0odq8e7PL`;POS-3mA@@D=!o^%0@Bnxa>&$t6EP6IHo|q6kUqJTY)CJVa712# z^{v2-Q-ME3uZ>rJzM}H?0lT!J?h%48E-DB|TSNv7i|b~Qg&B1qnhnVwkp+kH&22^I z+74vqtH4OaP8Q%K8kSMCjh)5PJoN08P>h{&i6EGIbwDs*AT3>HY3kR7BKol3X5ncG zF@~=s-#R4;1hE84m`K4lgfA0RP>vPxqk4L71n8P=vZk;(`b4xN%Z-l%B!0PLzoc$g z{zGKPSU#h^rY^*F{f1DKdLPL^I{e=fA{&FysWFz%JCY52Bk6-!J|4-y@_9)@ET0m> z7|ZZQ8-ACBg8wgxfd8O`;D4D=I&UvZhXpVADL9(xeR7&1lHOy&{F)3xSUut(AuV>6j^lCo zfqbhcnMgX)a7BWSU8}tHnR>P@Q0030lXV9`TrVf$BUK*7CqbSQBUK=Z+9IqeH$Wu#1)bveH%@ty8=1g^}AgGdjM*31UM(ZivX^v17J7FzytU; z2~m7)Bt1@f;sx97%A-g#W2>(P*LRJuVXRq6!2B99qxi-s-%TW}PVD}L&}^AUDB2gL zOKYcYi;T{wKAIjtBq}Cxyv|8mO9Tx?F z1=o*sj4mFi0&XZU>i2%_n2kDw(9X>+feEvJw3+ZVY}HH{dLTM`wES`gm3R?lh-hFR zK-R|ynb>c)q|}_B1>}ft@qOTBe*OcesFiY|AV#-r(Ji1{1|TigARKEVbHQ(P_MOW2 zks!aEY+>2s!t?3M$Cjj)^^c~XR=u%`lDOGhsy17fsSE&OP;m75(2TI-xbQSq33ATAN3FJwI%OL>4)sZ z-;xYWtgR9Mh za2YqmYOyk4te9kHEkaDPMK)Z2*HFQIK+wSGG70s-;~1?3LSB&LrzU;D|d`dDy{K zXSwsAT4z|talm#&N2V+9Q$(!f9eRMWGM8rMwYPr$RHp`HE*+5H%sNP_ zXu#XDm)l_qM!ANegFwva4s^}sFH6KCV=A<9)gzsfudE;5&{zQGJht|hHBbwN z;So_wyBh?fX0PCGH_HLl?r`19Urs8XG00GE|HNJ-kL7Xwo3?gSzP+oUd3Z;#R&Jn> zbL#gD7&p0IR=R>ydHcaa%_)#uPO2DaShfs;B03gLIsSamC4r7!fsWI@bp{=`0ADod z?&R<%L9bd?B6I*XRR!f7hS(J4ksfMzIx*9|>R+AC>mC5r%%P~wutpDNYKaa>zDuZm?{e=HKI*=ag} z&c4DlfYuJ$4RB+sV~TDd&;^__e{PYG8&j*BQCEJ^gof~84TN{ZhANM|Gl~q$Fm6`K z9%s5~gHC+)jfSHW7us!5ImK>cqi9arsF0AlapYTVXu}BB94?qfhKROY=zs89!(P=I zGF}W-JO}M$E5p%CJ!$x%b_h(hdz9RR{N@H`p!+my?OvFx??DFJr-_L{9R6>BOXemd z8_QQ#f~Ix_Xt)+o+JJVs7dArBR+i{Xk=MyZv!&_w)y{3ZwIS2lwHwGw^7mUWK^+UC z?=1qra=C0YYa)p5HVvIkv|E{}t} zn*?z$lpmn%0B3xyV=Qi~iHVeOk;+2GMF~!2mn;l^NbkEp(t} za#Y}=<}|S})m?_x{rVN@aWOw0VO>Sb!fWt8Lfc~JPuxbxviPE;!Fv}VRzETYj(ZyK zNj~jo2psL7%UUBhMP3)$TiS5gs(Kp=z9s_4&CLPqzQk3qLg0>XB@<~mPZ1)SD`UsBk>}_nYq5T8b?07-)X%0j&vG;jMjbH6bkSE}8)l z%l!tE#|r+BD$uUhJ0=^w^Z~O7P}rKsa7Xph5}91bPw6sx*1D>4sx_0!(up793E{$+ zM!?>(iNvget`N*&wfO4dL5o#%JM)DYvV6qoFq-tFed(8 zAdT4+G3-x*Aft<`wJ5T8Q45j7PPw6S>1q%KA(QFh7jF@~Z$qBueOFLb-zIU#;oT@X znQb&-kT}|y{jBUyl4lM5zDh?GDDTi^%m8_a60Mf4fYzWR^;UI>u?CDDd>gq1ke3Cz=|8dd&+dLegg0C5( zyQtts6N42mp(`V-ur^$vadub1wum^`8Su9OrQw`vmvqvN)}X7oFIH)dOd*Y*_xx8T zoMfa9cGDd7o%sPyz(uVxKP1z7-J#J>b9JJ|t;+YpM^(H+kF8s3ik0t;#Xvu5SbT@_ z+zlKaWkd{;sy^*89S1>8(|+ns#q zN=jOSo-r@DI(B1b0^n@0Z^RWarc<*i$rQa__4 z>gTB~gvj~?1WjCBXqZA-?V7(&=;(w4bShXTv(yP5HVoGGb)ev|%vZhoxz?hBk4e zc9QxmqWuYF5v2+FoVoDzLMft&5fah_7fe`MByk(tHVJQ6zQt%ltCb``)(kZ-$R@-5 z$W~!AF9tYuHd_Vu^Y_bMXVD)TFwj^k;wU(P=*a>_>zG8k^>gh}O_z|?f#j||344}d zcke+#xXZ@#9ELHG#az~Kc3gL_5PdL1j+zP`@j4d~ow`pTcu)l%{jb&@qm zJR*gTB%Ng0T&$DHI*CpD5J~GP7Dn0Kjh5L%TWxL19j+UMXE#ZQ;MrUW+1WjwM4h`O zL7h|573vHmZSVb2jLD2xClzRZOdC{KJg?C$@-F772{G##I3fofTD(zA{RCyApk)5- z5DB4kPZ0_Ovs~jK!q`o8ruuU?Vjt7x1ZCQXn#*M+ga0L*!F~BK5CT3j940}LyitLo= z8Jo)Y=@hX^_|63F8R_G6)QOuX;(#VSTvMr5|NfG3%mk>AWvqFBUBsdlwFClVt zAE7P9hwXYdNfGrPlu!~F{ar%@|b4UpUj7hA<93W{?@Q~RA45x0moLk+Qc$vZ#H(yaOLYO zsIU87LokH1iJ3BtgIlC*<7(Z>K*4%K#OPr{>8!)mfH4ogDHpx&lrj+(3Gw862q7bK zGQ{cDT$!V+*l*3!_;ciR>mA}&J<~Lo4w@P>P;MO%(@k)}GlhCccmu%YBPwij>mkW(hHqE%L43B_Vzm31P>-2&;E>A!9;U15J6~3M=Ittix|Y7~jQlZ%UQ> z0RCk%$Mv}f6aJ?sB@ugA{%mtvI`K=@0+`E9eezg$mDUfqob-XWv$9wwPe8cD=|w^l zLN@DHAn|6?!xsPZ_ds?XwRH}?%~PHXlB{Z%(Xhk#NLgbpfhh5j1`htro0c***ROPl zDn2ZJfoNL&ZkxJp~*~Uff`4W3*IZ4VPXsUw>J|b4)ZUgdtSZl z(AwPj9ju!^r0lZ1RyEG%dHC38R*U?u+Ij#~yh0CAov*RVmo)g4dF47$ubFWfee&xF za)p^uIEW2Z_q+!BWL~gWLTFCW0CL&frPtF5v8f9O#8bz&vc4S4=Y-aA%hEGw7@gXP z)lq#Pi=q2sN4ElIIzkpp)b?njuP*wKYe=_JnJ z*&?0{`nu1Bk}R%BabB9tIcae35iKIj1_Z|U+?|k8QL3@@P~LdRjP7HDH=Y|A(k{w# zFPO8;9ee-%J*o9|x~>JgmOT+`mD1f{E7{0VX~qGmgbZUxz70IMqjwoP3#l+`bo(eH z#Abt8nb$||Fx*I)wTN9Wj_2TSa8+!EPm2l1DbL~(o$q;@w5`!Efqt<&y08Lbb9m|! za@XlF`XW_|n0`Cg5Hk6mhJ{j#ZRY@#o=n_RQpDu@ht$R)am`$VWiVKrl@siG zgRAPTw(GT%dYEOp-h*Vi%h<2}^cGn9BA|MpeBZ%TYsL>iBK6CdH29=_cfU>M+e{iX zS#SgW#MvoR=#n?d8o_EIaHDwq^EjD)f#U-G+XCmC2#7UHvhZ>5CkwouyLQs!(Fr85 z$(nv9#$D_VZzzXzPpV)S1w3ZOmoEXob7A(PFhv}WzIGz@;fn_(jbDE44W zffl2X3%kpHp}~1#f0skXBLKO}dFr!u57`sj=qd=xI94Pv_U%m)&lBpii0F0#I}Bom zzw!@lAF$n-lSBKCo8hHHMa~q8Zzvpsw;xLry_2Pit`q#i4Xq5Mr8`Ynn(jP2AKmrU~~y z%{GA>o#L-fU-^djriRq(QD3=&Xn{vgC;J$yB^?d)s1 zoOfw;ZavDBfmW>g9CjsolV{vK%;d!ky*00^76}eZtWRGBA~}&EU=GhX-oeR5oF)IcYr(iBeWsaSIOk!>ivTVwdkQI4^}~28|r|Ar&^wRnB+3H za!C_S)anx|IhAkKFNAVQvyujwm4R;$5MltHyIbI+$8~wD$VLb4mQarC21*2j<5meV zI0A&)@H5A6QzaYtrzDg^nKcr@Sa@DSjD=~0F~$Ps)9^1TVad4WE5VeE2@4s!ACiRJ zir}{LMiTD3>HxD^XQzmSen?afP~n_(*RJ=Gglr`*Am7?22@JsH z5@G<}Plznb6D!0yN#=>GDSz9zE-(`D=JyD}^pCV8F*28+9?S`|1yieah2kb{mF7hF0RWNmzgX~CN4d;ej2ftr*|Z{OGG z&F5%X86$bZSKajC_1k;Q12mN^y06QW=(!tUgsmltMuhFVw!+h)T;6B~PZQ`wZ!VBF z(^TKAf;$W`!&TtuZ+6Fgm&qN=HpaqcZq0=-sl$FkSPwFpONh%;~6oTq=i6G3A1bgy#C1f`?$3}$! zO|nrfu~BW65COVLkbOZyoP0$y;uma5iaNYsYy7cHY@9JmgUu}K3!_VFGuPI!w5hwO%D zD^GiYs7(Rm8kmQ4$`R;E`i784uDoMHT>7!zg<{e4JQA70Fd_K?p|hkmz%d^jNOfIc zJkMH1jzzw;@cTv*vxdE|lU-d+A~5X7O>49z-V^HM8)rO(QTsbKrB4pcsWTD1R+v1sgiXZ1youVl;PGzVjTwJ&Nk$9LM_Z zd0UoF&nI^ZW0EmDzk#)04j~wZrg(TP6O`OuOLWwddf?<-cmCA(}PW_#gxP-Z&4GM4r|$#+V~hS#4;DEA~gE+c~U zon1$W^u0}ij3rytQ_N3MB-sK&o!JuN-}#+<>nXclBMGVZAs>7& z8~JC&?=W5xxVp0z6XKd%jVM}wyi6jOtH3W1qIV`p=GT&W2Vd(V)7mZxuKOIow6oTd z(A`BJTE9Q1ryaWT6G$++a##~>iIZUU`G%LlR%ccod9>tHge(&|twf|^?CJW!g7geGN)(Xd@2t+Xhkv=j-iZ9pm<3n_r>gX_D@8 zbk<$8W&L_UQnO6QVY|DW7Z(?T+WPCDu0|*3nKpSAdDB6?1%WT~w#1Nk7lJ`s;B<1k z&3Xu&$`@~6?2Bw_Tvq~uHQF(aL1sXt225&+VhnkbSe)CVi#yzCc<;B@F?z_u#(PB8+>VmR>=63rKhKRRK@@etsdKvChlX zd5rO+o1~D=?4mQ^St*)DpQA9)FN?}3)7(L2jHiw+=8cPHUO*9$j_z#Me|Cf)V zBO+pui!-Pb!%v@|KaVhtz1CXLFqV?(?I$R_?awdsKf<8)|B612sHE%@p(aIR@L@Yr{lDJtC)ue-q&juzOsY+rGE618V=N%bj`{w*60Jj*CV7y%UHeH znaCGj3Wp}h_BZfKXM1?k5mI+KD^p!*{2NR$x;b72<>3S|Cam0BAjTBx$2)Cn9(xXw zT*m5ccF$bL>Iycy0oxcGrUJFd1P~EuVkQE%WplADoA=QL7+x2nWdXrg_tUnTOy}Hi zG`}iAvBMm{6T{ZG_US6D@S|ix-wrie8m`BAWOb&{UC!)IfqJH{_2C7z%x@5)P<*vf zXIi(3rd{$c7}YNU24N*Bz~w55DOSF(pQW&a6mmK4bunPM95=JMkQg0fu5pgC$M`*_ zhm7%7S(J)OHG$}l<1jNurVahu7lXRJ=>&I74jYD}<NiM=_BRrA>&&-? z%&MBA0{?;rOU}6so9I$o5^Svkx4}rO2?^QZYB}PnE=&G{(C;qCSCfI(mlM&z6m1B_ z%w!xK2NqGg+umqxTOo1MG|TiK1d~Aki@p` z;+kw{rjL>8Z&MwZZp#1ZXX2BTSALlk#P$h<8M;qhxIghFEGzGpzso9TjnnQycNvn` z>1vR1TSSndIHrB9V@$La#IUAfjxSJLZzb#EPOe6Pr?{BX7kos{(v;EyGB~zuVd{4& z7@f=EdKO>6h}f~+XZ<6;ECUsy{!%(qgT zs|EX*VEW6t`a^2TsRc*)kQ(T_=gG%weYC|)!^`|6Q${GwYm;j(H;9Y7w`*!fs;g~A z9oJxAalu~83y}rwV*t`!<1M|IpKtLz-c7#^sy=zI#z6Mw#s=N}OQ7n^ zeos8avw_S=oprx;heYmB!KK0r)`Izj$~TH!YaGW8QuMT4G($q{$EUy}UL!uYC0`fl z1DMnMS-f^6k(I(CNtU$`QIsucJ!t{$)0j+MO@L(>t`L0CwJcE-&LKu3ATZXA{89cV z`5abEAJTa|L5|RaJZVx{zRa+RhwU~h=`o}e-Y0^P|AK&barHJM`?XG~z%B`)ssIqE z@?I(}x+D{>j3v{6AF{y)MRLr3#gj`uo0&K(-#C6St-@r{+b0qXL*MCTMHo+EiVFCFeOJU+jD3(%noT?bq5?0wL5H-BiG!}dEVeL{N3pJZWWMhPe}3A=SQyQvI-pFcDBL(Vv_y|m+j8t3zvw$PhzZinF z8~!xE-@r#JlhlIz!${Q9WOjnVCqc}HbvM=aTUX#0gdmO{L1d*10v^8}Ma={1%fjX- z?dwfwHKEXn=9R@+E=0xa%iG^Km61W3ztRyTuoY&WT(S&Gj+OZ$C}2$!mOQ4THP?JE z57Vr%SyeGN-#Da4kZqdeSx!6|j36hZnFa*4IIVU>O0e;DG1Z44qVP#kTdQL?4}p{-txW4=W=l%pszX%R!R79&WE2Q|Ay0JnD2 z$+5_YAqBcWfH}EZ+<|)M8=w|^uA#6B2O6kbmH)HX^`nibMaMse#_Fx=5qC%Hl@xWO<(dFLUD zHU_fg=a?u>s^KkXS?1X3X!u`EpT) zQjF>QZaW>rV_@6Oh~l2F!7xml`|P96w5d)L9+nHCK)=EHWFwFz1{uznCbR`w4DJzs zZ*_K#Y4If6J7Ny*$n4cIr}B*vr}kl!WLF@M)B#~%(BSWQRPcU7Gj}~6VTTML7DZwU z*`jt96x?u2Af?5u0n=BD*=03)k*k6?fkyX2PImM@XTYD3;rm9i8Q2||@v`CZmtRnw z0|@k5vh=7tKyUO8Jo!tBu-g`ArQQTbw%UCdLTlY(DaIS+-y#v*N)N1}v79xMVw3wM z2<;t;Y_54ZG2lET5B0H|xg(qFf_K0Rs~Kti#kcPs0qx~rlMU?~FA?INIwn(hIte2V zoRH2l!bQvVfQ4CnukRT;Z0%s&Nb;y6-+*8jO{C505{w)7(bgJ}xiQ!b9nPstS;^i+ zW4OyXyOGZl#_Zm(%ij^=nZv()4bd!f`g%sXQ2Z5wYj!}$RvTfsCq$#6W6IZBwB~D{ zYIUc33J0N(1G!UZJnOp65k<(0>sO1Zd5-AJPmEAPbXbazU%mFb$|lnZi(#FJYoD!)-2%l!QnQ9Qh&H|S4&Nio3A~2 zz7=h8Z?SF>r74~nnn7ufV&0ln9!Ef0DNv&f6byA5D4wTHr8@A)Pe-~AJbxuL4Dg^vhDLJ!IQ^@vjvawX~ z46mY1<^SyvL>?y!LFnI-cQt7k2)A$q1Zh_CW}U-4?*}F1$d5zEP1Nk-{Np&blX;ND zcFQ~~>g+m4n4UjYs{eDgX}KUrzHx7Vm9YD);mSWM0eg5zyfJflW!tAiBDYxm|&nNsjLiB31-tJ;4zg~p|(ID!KMv9FpW73Cw4pl_(khwDF3=h6q)|)x}3^mq~$gOhV-gm zP+b%)Ht@GyC_zbFLW%NM%2dxM3x7`Z(1X*71q;Z(6IvKgem0Kla16SumAv`$If|kq zKSX(bh?~_PNLv^txauk2MSxh{$E#1cctPYo40NR4S_9iZ5|y6(+XA@(Hd( zA+iK`QkRNGswD~qecn~V7ly)UKBka$yq*~Hr+GQ?wCs4cVCs>?et!dU*fi)NAcwW=5;joQn+Bkl z3O*Vql=gpK?7-Mh*K^ekN(2iF(|0Du203>V8-Mp{D&EJiMYbcJ8^A~XL^cQ9&tdN& zpS~{zf*4Pc4s_5l>Nha;8OjzNW9qjw_2oM`{BUDdQa|}tJvYFv)Ahi$D2nUBD6SGL z8t}93ZXpj^P#l0+TUoZqza5*y)M7{WmWlDb2tR#^;mBwn-p!!Wlctix)mlh)^^5`O z&!H~0tl0)6*VQ?uFjx7mpGV;s3j3$?C4TuafPu=t*+*u!)F{e)I|84Ppgaeq;1UY- z%Qt4uQb;q^Sk*g8Lk*;w44?PNhnlal>9X%V!HY-Q>tguor7D2%^&>1vV(_&%ijED* z+O_(^R3b!(GbhlHs%%wxa4X8TxzAo!f)mlKi1x+G^U|9Ug9LBkSSF(N4W&a|VDW5(bV7Jb=- z&x$PmWO@&Z{QSthVGX8rthr>c)6R=0$->$NC1kCt35Q(05d+7<`ZP&rQI33@3&ktn z=E7Z)kV?y(v;4vC8gy(MT?^?8V5lPvmMCBc>9N%k!Ky|JYwv)VHmH30ziA_wK<}-m zz!2^4mGQKS^I-s??wIuVQ^d|XY1Qa2{WxOhNq>>qFG<$yN3cxVkiAbe0;&9ROl9bO z{NGd#oRziXsyk~`X62q5sVrZgyqRT!!*Ab23Hj>endF( zQWkqkfN&n)q^V)**Zxwfif}UT)+$1x~y_X3xJSRG;-i4!=-m1^!jGby?Y`~Vp*t_fX8!r@)VQ)H8VZHHKz z>tgOy+=!w!b#bPhkPBAVMsrx?*P@ig=e1u-x=RTXuQxNIe6at>mtmLo*u{R2l~hwc z0xjXNb!KX$E*vP(bptVVG4o&hcXhwTn`RxqLwA!VkfQqm)BQ7)V06BTda!zfjBWvg z;N28~5he|h#2}2?b;hXu5paFk+#V4&C-(`4Q|K>Y3_77X^vN7)M`)U1jx-dYod(D> zbMn?|q+o}p3d}pPFgvTmVAGzF9cW<`22p>?_@JXLpg829J~FF2}NI z1HIZ=692e(zoVzIR36q6Vwg#H?IJ|>ZY5+2YGhc|o{@s+4U)_(!0UjCHAEMiJuEOi z1SVi$@>TF8hAhxH3?F%{<_gJOnzLr}&f?|abYD+c{kuZd(PH%<@PM|PL5oqg8MJ2k z!d2HB%+|S-Nw;*16zMx4ZKR}3cFi^Xx~_(@s|pTkf)9GIbx)CO1ZKJFb3`rCIdKz9 zTe!>e3X+NDmo|{A{@zihWa>(K&Ahu-9Lw^;o@-sjc#Pe5#i49^03=(+lIjo zl2^ITdWTwU_`yEPHN@We>rXKi!VhxU$)KGi7Wo`WJ!|A-osn8FIQCN{8<5c&pCX|a zqB#@QMvOrmNn^yua;w(FSaR-5(PM61iqPwR0YJ}6xVB(EW@4R~#B|VKCmF;odV`D$ zw&PdYyEH1~@{*Pc2ne?sWMz1cLi-yfuI3u8k*h4_pCT6`z5yro2ISusQ<%;8Q;1Eg zS6q2D)!)@d-+vITb>7_(mB2?6N+8#21$4$ZSJT)l636eNAb|oiNRyQBaREKX6$nUx z!;x3nx|}_;>s)u)AXi&`;q(VMYpny6LkibLax1~NQ?fqLSr~X-=ZZ{o9d-&4>lvMW zCs*`zHp|@*$@Y^?=L%fo_(PJ9ZWfMEw0OJvuh4Yx z33h*VI=F4T;4AoOCx?yQTf8!%s${|hpzgX|(loFP|IPKj&<#h%Y}HR5>e0y*iP1%%a#;*7Db zc3jW)mPp2LQZH5chD%6OMUr{)RT3@InxS`1lLPbnj?%TEaX(s`rsAHP-#+TMi}#9l{m-$!dJ<99^6NX z^8YTL%bI(YQDShnXC4~Emixf(AvV^r*EKiz&PR0%`+5~v1IOSwyU!xJLX0G9Q)x(FT*n0xgM5T^VXU|IgRIWpXc6Z32~UOeIHIUqICC&Tzq{D#cWw* zLKOYl3^*}PKN^~Tp*MTH4&8l8N@E%yvT*4OWcJ5%sr(IPl2-W~r>o!)#6Ya0-k%WS zc&-4e^$TF2p25ny;P1Q*-id`taVJ-6{-U1bJ9e0%9$U`kbZgN8%`s%jIYtBHVj1Qfu*pGIkOfLgbuZh+0~pQ+I;mYmo^#zJO_cu*(zA!M&I>mo4-O02;!m6rGsg)Qgn z7(b)1ta@#<`V^_nVcxMcEqtP1-gyqL-teCEd;vVG&eifBz^8MmNrn{e9{9ML5`*u1 z1%i?iO0t$?5$QK}wPmJFmr9J^90@t(ed84}{f6h9mOqbvfMQO|3)n7T19RPsUvrUj z>A-r*q-x&_2>Gbwe7Qz^>xH@kd(fp|)NJ+aYpP=$PP`y?#8%|YzWMNpOtN(^Fe9)V z{cZQ7@a%0SXPy0S0#2OabK<(`wF74~#ydu&Z8tLOsEAC2$(D-p$vKkybTT25+@zC< zk>pB}?m0<(y!<^~kjx8a4!0$j0}gM1O?9E8wua`B@&c09JY5Kd_vsq^ke0aU2l3@- zrj&c5eLh2mZwN;w))=57%OJa<8DJPdmR#e%no#dSgy)=4XA)|7`OJZjeVoOX%=2tt{7&Wp>-s*)Gzib@>0I z?LFY5F1G%E0-={LRX{1BN|7c~jY^QRNa&yxDT07X6OyoEU9!7b6O7ogpxC=!Q9%%; zUuhQX*9NGl%#FPvMBxAa%zSsV0q%2u&+~fyd1-d)nKLtI&N*}D%zP)r8)l%Ka3b81dH2w1G3`UHg#QLu1X_JHD=)cMFd8$37hfCHcvW>CH@o#Vx-y3%YQo=qyv=gMYA0He$OSQP58T&-@d zUyKQ3PowAcvjuLS7uo-zWwxOFDIwd-rW)wQ^d`My4juT#G}@#N{DN;&c-)`l?SBAB zS7J`!LV^?L=y^Zsc0xz0x|9qr{Do2)k)j6$>+)Ng*4b`90ZTy7iVb?gvO?5Yvm3-v z2=Z1Eaf=9TCIBNh?>S7dq3df}PyjZ87YQN0;bOWSDQA~VPNW$sOFXd<<{v_B(f)4+ zoJd|@xoCy+nK<1`j6bit<+ejEN@$*q9J7;7W_TK6*Zgz?IlS=Qr5wM!@IAb4f@}Ki zp&Hb3=m2oMYY&57t4Ha3b#YSU&MYUSqjyQ}z<@wvrzr<~aN`M+YRn>`McEC_UdO5F z<3VsEkv{Gs&F9p9n~d0GR}i7}CMz;7^H6LjHWK&`%;D`?u?V)|bwtw0wHF%NWsQLs zPyST-Xyl!R*s=?=42atk_fhwN_t7@CZS;hh4hx+AzgcC|#(0sRpQlLO)qc&@l#ts_ z?$RgKAbQDsdH>8^N!M9N(>CkSMuT2w0V#73!WH<%Ubg^>^`|b5&Ke7gaZHP&^Axsw z3v@cYG<&yGmG3m_EZv?YVXoMtHGDS*P;biG5E4mU*>*N^_cUaxlHn z0O=@`I~q8Im|eX-lO)fn-hqji)-r4*U4}BAPP3Geng6cIT44dCdC_hOjfordtuds? z=^#9lfG&_~-vkqx%azl107I@0eKA?(c=tz^yVXB<+I0j)Oh@t&ZLwFGWynyo^bb^Q zGxte0ZTdue?t_Xx|B%I-n_sz3Bf+}*Eg^Wg=+mcj9M^`qwan;W#%R!0bebPF1EE)I z8|Bcf*G3ycHN5O9*hpkA`wF)pR(CX`usTzV`jf!OCPR$8|1b|^ds5!cVCWDmG?M~e zWYR%^&!m>!{~?ClUWUGhALl^Z9JoiU>MF`6X>FXpzx4}MI_I2DYJ9ti@}CKSR5s{U zSoC@$Wtu=d1_*d*ZVyH7CgP|F6ov_fsM&oytK=wV1X<>_k<^50wowAnZ>_c{9@mjq z&1o&^L$jNhC&^Z^2VF6zY-}ARVe>{=yCc=h4k%1Y!X$5Bec>2>IyS-bIKF0$Di|v5 zD}Rf%C=|`1=@(w1X?k?dxWq7S)u2>hs7wzUlD3t5_z7Zl#0hq!`6HX1U1)T5$BS;f z6v+qRFOLc^+whMByO3<%$5I3zS{@JPKLS=XeMh#hShZgt`s_Qs6!oJFt)gd9bO{5WwLm zy>U1!PT){|JrLd_%27;AFYb!Dj6@eQgILFuh9Bx92ZZ2&)Ov$QZd6oI%3d={m=;hLNV_Cuu ze@H!-Y>zVXEt*N&xY!dun$N!mx-8fS_)R{_SOP?|S9>(|_spsaFb%h%#Q5W71yR6@ zUF{2^yrIw0b}d@ccLIlkVY1xj7+#+xv!15U+%5rvc&)5&7EIn`dxd1yn?Cdp$$U4> zl%DM&*dUPSZd#sphb}xBgty^<$3y6X)@mMh5Kv_vag9J+ zji0lHvDw~)<;7$Yb)u=fwg6qPr=Q#anQkfDj;t?^sM=j<;7t|(!(y6bKgzS0?y09$Y zi`;XF##_*+lx#iSEOWxR=lMlFoFnP|?hF2K#V%kN7`XBAizb-rI^IQzvJculSA3gl zCpYrWOd4!Kj+^UDSC>_E#j94#1O6d)3HD(ftJe;ogzl_{Gtke><)Gkvgx238YA@w` z70eV;lt=jdI@!tt_eB4x z?39s5Osyn>u8ieAOT?5Vo#L~DE%|$CFeC2U^eGb^_ic(~PN8HMS|lajKrnbFH5LRj z_{(WUMahR6rHjl6b|n+z{=rMg{Du7*(M7=y`in_YKtFehsJ&rD-*Qo|TNQ%5S?{8o zc|pL2@PA$9MZZKth#$G*-uxcXLCK$eb7#{V=DAX-e3=sMSNu9!kL`&09D1Z5CP)il zk{N8u-+^A_#ha4+z+lN+CV@dZ?Iv}4WYD89j>rwBlG)UuccB;Eq_Qj~&Od}o1N>fGY$l;tWj!pOW# zDkNE+f?d4mR2soTTs~v1Bso2Y@YYPUAue=|s%y(uphN}oP;t&cvbs{YQ3^{a{KMCD zC{&RwEdD<4mB!X)*hP-*KBT;&i<;g%^0=qH)^8^I18B;+~- z7kSKuIQSH|;yVoYvJWB1ICX+2Ck{WWc{lBPmM(d#D`D`Xz(osR=J1gKtm6*Y7Cxs$ zH~`fn-Grv#-36y7#K#z(Tq|V=eFhhHx@X2g@|lHwSU$4a-BR9`<4!?k#3E^s&;p?3 z|K>#xvO_VKtOpa@7{cm0O6ULPnqzK0tqHu!z_XpDGRIjDI22eZcMvkCB6VRns2AVB zehHyo>^?#78E7wna0loCj*Tfa)5~k)q#0}K3r60Y*V5L;xN*OO!xFmj1UUFU>zD!v z2!sIZhY$vg)9*L!g_l5>Os94X3EDnj_I=sqLVmN@8Bv3cOXM2>+zsC+nxl8t zlcgl4w-l#^b-;n_5nBh1;71)Kcwm4oLN(A>b^|G^&_;w)fg*$MwIH)NpYUH{%IqL5M88-9*^*I#?S!~u1uppIXvaN? zHJiA)_X?#*jP`&r9CvkZ?Nf9~SNDR$IG6mCDtpZ0XTc8Pz8^6eziW!cyrUPL3m|*2 z>l6SC;~OPP&lddQ!4~Nm*=ME?=f%$fN?`f0+~S9A*$vDcl;s@0B9{qUsQ}(djUB*J zE?kn%2^X#@M6_j$yKsH;4DnJfT=(1@Zv#!Gi_nQBQb3t+?+99YkC$2;v1i_e%PqZEl*p@V)nDN-Wy}RV)qd14*)M(RpN;2@klR}r6ZFl(1`+$4$$Ft zYL7XZR_*f;y{Thu#_T>mxR#vTmjP@F*FIPBJ2k6wvKGzzExRdibrE^H>sn221g6Ou z>RZ&^u*xn7t$-T^Yap;fhuNdu#pLN>m*|sJPlh>`Ye<|l3RwBDphO!n&;r}s~!CME5W?Eomw~$B(zlkCyDE~LJb+k=DKp(BD1Ts0# zy_q>PQCABM^deR+?AkJE^Aa`moef2^jBB#%TdpQAFMviofuC0 zE3K=+5b6n~>p6Fqfng=ZT_OgCSK<*bvYnt=C>XGm4zwbca-L4;#xpx!^t3rvi%?5n zUaSN?fQI08s@zB-W(VnZ%k4$=nL*z+@RBWkD+4Rr0A2wPDo-;z%OOysfSUoHsA;qzdALuq5{e_ zliZOz@F#$&FF`)=BDYMSW9MHgf+A0X!d`9M%x1veGP~i$q(0n@dM;5q3gv{SSaZkS zL7WZ7J{YtaLrDwdLUQeiR*xm(4-CZg+l6U~v359c=m|PQdA3ER_r7c`(m|YT9tV2q zURw~U|578H){b*B2h5H{xWbpT96?nPT1UY?xtR!KN_ymWCNFgbIkL4*xr!RU-A1nv zK9;TvQ3NDjqWm&1G&>dYwAHNTY>X{`oaIcXA)>fm%lQT9 zFNWr<>H#}!{Va)7z3^}r2pR$pSn9DwJz&Ybf~-2WhxFr4V35X{;F1;89+qaw4vYPb zj4TAm5PiVh6T)xeEeczj)zu7qomMbVkhlb}c4HNIlH|?FUCLzqnOdeS-X!Fr_;P>6 zzg5Gda(}kBY25yJvbhbxikf#7!~1<*1ICE*sK-x@giz)$P*f|Ri9-cVbsng!gI_3v zFKgT*2gkD>rK4C|x5E1*MsyThT|~oC@X8nXg}R>G3`6W zC#Jg316Q6pR?r|EW-TP4-K}xP%oUNwL>M>R+#1U^_dYaCG>aYIcX&gdMR>M7S4}df z)3Ki%wV|0+TWhHeR@a%3S@w@OY+5^#L&|G*Rb-XM7Ix%rhXP^6O}??`C#1X?Yylt| zsQC^w1MjJ6aEK?n#ajxim(h+f&ADAMBWoq+cZ=W76*Bl zf9@J#Clc%AUlzX?&!)`VEbaW?#28}lvc{N0rG9szrUn|%1hNbx;WsKcS7vDV6}uLF zZ(-J88+G~GrIt3!TY62}#rX_mXCAj zOIuiqH3gJR-XY$lc<8V09A$!1P9v=izXg`*RW7#&*L2CH9Nn2q1GX&|fVR0mTwwv+1?~T^fV{mf3KEqZw&-YIIQEVN2}{&@ z&sa2KhZtrJ;gCD{C38PJFY_zvs^thRs2)0eftP!UFJ8iRR+4`sl`Xn8;^^K2^NJ6n zSUS6~>Tz`IUGFc{tgonBg^{#2h#~(+oSvTTN?ll}tQ-(X%_s~OT{<{=sC#BEtaS;aEFxXiHZ0>vWG%v3+qe*iiSi&K z4ZF@~?P-enQM8Mf`?EGPhpS+%@SA7<-rg2IG<880u;W1K(fci)m*kv=erZJ^9(KN%U`#ohm+ZVzoY-x_FhX6e zA{%L!$zdL<*7WBgau>5|E*5cWb18J#cFU&96u!iPfp+5+@tmv#H^KDe9wOt7oZl8QBxplk5aG?lIF8XRuRR!Q@s18mu<)2Lm3*hJXF&Doz_Uq*>cMzbp zH6;)vaj=@rMS+n{{Unvei;Fmb5HId>2oQ_%EeMbpmp~$?GzjdVb48SGf;AnJid^#$ zHLs452Hi~OS3WSCjW;ZgXE_Ip^HY+4_h0Gcj{)WtPYW$71x7=u9nGYFq!MOWD!NC2VxX%~Wd8Y0{`XX`LW+|;9 zZu|3V{&bRh*1|CiCa=|g4j(SfPU&+E$KTPVul>ySfqmQf$7~PTQG{+4OAY)=4t^LT za1#I&#)*l5f(e_R)f{F=wey~ubw;wV9lLO(?b#Ye)%L8p?OFY&LG58=1NCJxSv-q) z-8_{+8fn`aI*c${3^gP}gDP)^D(wkn_!eIl_Lho07+C33b6)Z#r%zD*=$g|a7?#&R zv4}G;J*HBl#dDD8lItp&Swn0`=XiO2p;o$v>1YzGpfqh_aT%UaNYdan6vX1vhdDPF zxhN3IBp}G|u{4BHUY?H(1bPs`2?VGnBLA{_4gyBcehvaIU6UN!#83S}ELP?sqSlUd zJ|&U~2ze8vF*_*Bm_93fFO=)Upl9Oeq0OXu^`F6_ExEK9$ls)*xvO@PcOHWX>xca; zVper1BC%xNWeXA)P<-Cy1-vfeQOsX$4^Z>iT_qxvCl{9gXaTVnza=AMWrhQEBY^Bl ziNIpa%iFG8o*4;t=I`9B9+GczoEQ}xi??%ZsfuCLAAi1BFe%~M0q|)z*w)I*s*4G# zF%g{%^y*8_3;fCHIjFD?PiJy@jc;k5XTNRV0a;Jkf&sw0Ja_@hN~D5=$p;A552WTt z7pR02bU9w`;Qpk&ND+I6akQMRK2_C+VL+q;&>rDOFUH=7P|%j-CBeBFIOqiav5%bN z+=ih4=Xth`MMUYgsAB zHu$y=nbCieYzM?-g0L=U)mJU_^k>L14^Wjc2r^De#uZ?LhHNo^0LCHU4=BKKDjDqM z7D_SsBq?pPMH)}itt7@rp2M0cUt7}Qu%!~oGiwwMB&*CHy>6U0YZ2)DpoQGh4zLxW@DWIOzgF2P1(jmiS zWmbt7sY`Z8@Z#j1?Q4C6VLRrU zGVRcxx#9#^yHacx z5}*gODp+3ZYeta}dW^@Sl%WXu;_@P0K+D_#Ji9z9f(bO<3Yr$-M-BpwcpFRO^f7lO z+k^OS+q}i#L5Q4o?WyR5b*u6=h5c~@7h-=rw~B_v?n8a?#0}{_BvKWs4LXT{ee$*C zQ1h!`D46z8F3IGEE&fa7Em?@Pfw&S8LZpq0QD-BIL;|^@1Imu#dZ(OlA~+Ng;oDC) zn-Q=x7@lcKL2Hti6PrJTvOUiY_7wqt0XGmuw79VpiDR&TQc4mzmC4Ci187Uu!?rOf zikQ{ZbS{7kg7tU+B1Svcr?92@_zCcQizv^ydL*F-ZdKB&B)JOQO?=4}XS?>K@*W_{ zw6X6<0Zl@5Y`vS*alGyXDoIm$sTcX`Trk-2pq;TQeeGCrclca1X_?HTF#eCP^OuZ1x9D1APUm~Q70Q+xydaT8o4C4DTH zGY1AItEv%oRL=f*9lyZJe%rkF7{k4Q5;OQz>on+$43~>i@os-Q_JT?TgBS6hNnU#r z*jYxFLbR?_kfRX_6wO3i7>aQ=wmSiU?ZPAhm`A=V%<1AXHO$$4Kjn-`8s(c2`9xgZi@a!S61g7f{9#6%E|zG&FCS4&zGQbUNnVsrmoaze#Ow8=U+}0G z1oa#AJ3V;#NCN5%FWi41IlGiI$BVS2V`jY~2*DpzXQd*%tyCq^Wp(}HZjFcel#g;&|a^B0b_8tJFy6P(R%X|RMpz)_tgx`TF0 z!=XUI-PG$=&XO8fo()2hVpo zjheH<7D>(!FQYjygwgf<$Z}dZ|A?(%bUl(#uSnU28y+JP(Ra#Fk#6jx(XU8^mpnSt zhFNG+{OrpU**uDIF%h_~RUHOZ3LRqHD#7;6w``;wKrSoya5eO%$5|5VBfUs({qmYX zMWm#up8$_@R+R*J80!(lQZjf9c~3DLW?ce2`2LGR4qyBTb|ux2vVgF;kP%sf++=ES zytPS={+fmKYl3%j`DIu53#V**SfanPf1X z*XnWJo*&1G0VKM0Vv_!ID(Yz|n4JzU~=)wW~o|WTVG?jr=9V5In&4(d=0c3XBObnU_ab=$r=e zvay2c@|KmJLGE*dBAftvxIzn9iX6+4l(}B+hF;9%_PZ_Kc@Ke!Y-8I+Fi+30O|s8^ z!}TANQvn5OoYw=hG-=~kSlJFADx!!Nsh3W@7y081T;;9EHlKE*`L!%oApuE!tGGR{ z`9rm$5o@_{=b0>JvhdnVV-yIXldf-ILl|7th^?5nfGULO@!Tf#h!X0NG=t_N?C{L6 z$ACJ=@byQQ=MAUV zFL}4~3o$IkbY|YW$3n4ZfnT7Xm@5GSl0$GObBHr+F>pv?z{ssKjE4DRoGr>+N!6fI z7H$`$B^71K?^e;BB-0CA?i%jX(vV--6m)zf9w9nVsJ2HD^<5>Tx517+*kiAYR9Vo> zTmdbX&V0pXa+hSN%aiSs-4J%Xb4Vx{S1DACU0zNRp<<@+R1#sAm95iBWs;E1v4iC5 z>CJETOQ8nW*+Nxpp(>Ii@=imJL^r@%3&vHope}zg)tSFt+#B7!Qz2a5aUVls^xeB*F!m9F~7GcS8m*( zGI^oHe3|RTc|Hd`OK5HYO{<{0JItt0dJ+yJW&DvWaGJQ^;dGym)2?Y$)U`BOd&|%% zS$oUa;Y?Ix&(hkj7RD;6J&O!ZX4$oNzKMJUhdGVEDJ%k5Ds!-*Rv$=3r6(c-AfZYA5yX>QCol`N6MY# zn{tpd)D6X-O796_)4G~=GuAS9inGc1cP9!?SEA+EE6_$+MAm)9XZOKwWMRr!=3uZ9 ziaC`PML`|{@b>s|U>c6|g12Lsg*Th6nybV{cd-kN^P)9SX3acm0v8p&2|K+cR!U2+ z3&stjZ2?9^4ckGc6lWzGy{TlzlYoMPcDn;V(u?&~?Tpd|7<;vkU#>D+lBsj|tMBHQ zbN8pz0HO*scABH`aeMy9uVY6X|6N1mINowPBw+3l1P*W}xWe+YnFTQU+0553uPuDf zV41VYw{P8Kkt+Q-_c|NEh?`Bow3;Hq{now>JxvL9Nw5_%;}u*0J$m9YsNq~C7kA}V zNdjQzGkd;cQwxJf-l>OK7^Aainl3@Q2BwgX{gO>}KjP)qC&!sG9yp7y&a}pkQB`(~ z>_(=LgoF*_r-im0HjITNTX*4~`HS4Z2N-ej4*3Q4x+b2{YDu3@8n2>-7p8CnGpjQf zENzDMky(K>ws$^NG<2xSn}|Lk(v>Qmk)|oVax5lT-8DO)7>rv8`QR-1d6aewt*nP$PT@mH&Mt zra1r;^rG1;YiI)XydpP}wZ^L~rPR(edz*bmk-Xi-@GiuJ$xibf;~EMN^eE2|oCR4b}=7 zO-o+%H~b4ZNN#x)ffoIih)Ho=3p>5X@W7@Zi!-WF;csdFQ@ApFF~3u@PDe*ZGE|Uy z1D}2nZCZT#EqE_{I=9!=zp{fO1yc6Z3AF0Kl0*U9t9@U%CMKu}HUk%9QCvs&srHpQj9MN#%x5mn)}$V0K~DndB(aG0JYkyy zFkNE>V|@EEFjz}PdWmhRDJ>IXdTP;C(}VdV$`Nb@m%%o*1!<-cfXQHE@-=irh#`I9 zxwy!G0eN9woka^+>3^lB-wEd_SpDH1UEFIA%xO)SJgiQ(tG*f`wqM^2W=@%B^@;TG zD6zu5=cr4U<|Gd}hgKc#r8{7;1Uis5{3s&P=wpu(ThqW)GzU3o*3n*TiyS81WTP0E z8nq)j%tf)~EY-jY0qiK*=9VzaO7=?}Amqbpq!{As?$Q!feW2 zU=U&|GxOgSMaBeb|7Bz`AoV)i1tc?q+o{XPA@cJkibUAcI!|eggxTm;d~Y%m<<}*0 z+;xW(uD%OOI%f1;(0DJ+T|~U-OAt4n3YMZH7w)CTL!=~0aD3VS_}gyHF7%>*wP6$n zEwO_FdkNFe(z5ZwU>AlD)u+KXwhlK`&tuj}LyAqH!|}}z5`^~6%7D$B9c)37OM~fs^G>t6ui+DWXsXcX{ZSP%7o(ZsL1y4K~363R}>*XuBwHOkRPP9wdmzS1zIlO zhJt6gg6JswSnP2~xEN`!>yzoob~e2vgr@ouK5B&6LhY3y|FuGDiKD-SVM&$}q()Mq>3RuGL>GS{A-6e&uMT%R0yl!&_*+dmT! z8wNu+w6>V`(f>OnsHZ?S7gS5lm^tfKG4d<3YnTmVZODtBiV?&<=omW0W5M?8;}!iR z_XIJg9DgpgXIW*7Jp1YqDf^XjY^z_fY4DWD4m2P*rM(pU2D#>98^b-VER$tVq5q-e z{v_K2v`{e{rgYJK4x`EBu>Y(9l7!fU^r~1&6tMpcwWb5t46p@)!DbX=?>UQjlEh&3 zj%HlUXp-ZzO2I|?2Eq%ff3~a7z;Anlmd_x{ZVS9ZS5=3xS0_{ur~$Uw2rcfy{0*z% zDw}6d@py2Lw3{Bv0fz!cwH=T6S74yS8+o<0GM9I1m^Y%@HvfyDJXD$S;nyIn`U zg}VcV!;f-_0(Y7~{%$i7C|2&Kw*cI+H=OA0c^T_kRT*k3u zQ*aWwtcjD$vO>x{tr#~+BH1=TM=c)~6^S3F&`tQHiGl|+3h6wI*)o3AVw$$J$!zMs zb4-HM*{|U6=7N5uD1jB4Nm0|4WOgwNd&wdmy%>!A5s{QeWZe9O6B$F{BN7?&5us*8 zRH75V$1-kItucFBfSiugD2B-2%~s8c{N$6U3;{#rFJd&ctDE;eRSwWG?W-8Sh(Hug zwF8WR-%Ag$@|bl;EmL7xOrX6uIeU>+t?9sm^MM5?T&65>BEDxEdki|#*~^MbmW9Z& z_i76Ydn~X7f0;`4gyiHnyenN~mnJT?f}K+S9*)0Z(43F7{G0PIRz*HhPK1!ps9UWI zMx@AW99&2J2(civ7q6E8Mo;pE!R};fUCHffMqe;5CZ%Gn!&d#PHg$SXfUDlieb0|RcOfTjeFYv*9Os4#WY~fiWu5mcDcbrd+cV@)F@SNwvkXGhtk-h{hIsK%?Bz zi|K7Z_Z}6!dA|*fOlE5X+0QAZfN&uE?5(bWnbeR0dfTHk@C9a1DIjZ*u>#kfhNRbh z4J6A#LIsq%eF=@!)c`ZueJSEaM#_V1be~dV!``u#Mq~ndH}-#cpmQxu^=!P=FV>BY{0d$PiW_xDYyeSbcM zP+4YEi1W@^2lBn>(280U1IpSx7Yfo~;(C}T?@)mP@VvH^H&-#|GzhQym}neTQedu+ zYL;_AfhgL<1I&$?K{Q^<=n2I{B$Ei@34w;{TwGR-oWW&fn3-I&G|8tC#@!^h8Etxz zm%&5FCgn*r_Y%q9!c`$A#6(-!jzkwh{LFeqtko4EbtLu2q-3n6C+_f(L=gXsw#)^s zsRMh}Jx;$od&mQ*D^@l{?LMMlekEd5J;VaQ z?zTsxx;mqh3I__i&1>&e?as(B*&gkl2Tz}vE+vS}e{jE%ZXjlw#pwB^ITr9aa8eK~f!2=1(zFuHrbZ;Zd)d@= zjYyqMsty;s+N28nO! z!A5&h%}FPyp&N;2Q%A-lI)ilon~8{!?W+(2WdCxdn_nc=1@RwJ7e#XPbwY77s4Pmi(XDh8rOCqBePyB;5czs2TgYDkAWZsZQ z$Nc0Xy>QRCKk*32xHM_s%qVr zfy^;u*h0j~!*2Ah#6`;7iMA)M_tbnL=;c;Hsu#6OpO>TOLB%kGUSzw*pKm#MkynOU zF;G!H89U7pzzRdFG21U6t-YvZ-p!0tMRMqojj8W5242J5%Oso4$Tsl=Y>jyoGi7pJ z95u3&;y*7g0mMU-u|bf$`HaLN?9Kkg$cUW_hehC^QT|p-mZ9InueqYVc%*%Pbrt%v zyM0*0cHZsdX4a!rSI+l1%H-+`_DUpHVf9Td8A|~8V_8LbD=J-3J|^-?WjL=^8(*GH zrp7(qe|v{HcvpzB4Sg`b2L)n@zhusBOMrX5J!6tR&0R@!3Jdg8|3SjNMb zcYA}U@SsOCcW)aPnJ`^2yHR&t$|XTeB%6rFUt?lF^fgm@{3~C1*C13lXU?m9j{T+% zJn!a~Vz(*lDgzN`8qPQt0f&7S5jf9m8<8IvD#G>fM>C!jG0Tzh=F*1-Yo}*sH+HBD z%?g+vWVzVv;F(^u4bc-Y`30ULugM$IZM#6f5ZuhM79@lH@7JBA&g-hf{%NqQgF4h) zb#_sQmCDh_WEi`K!1uJvAd2#&SIhWvME_tl`P!X9Vs^En`SN+w6^xw8>>Byhd3V=m z+OE+`LsHH@Rz=5QVl%*oXJLrIsK(hyc_N6EOdFA379)3_jmT|_ecYKu%q5e+7&h<< z%ih7qo$hHOv>AUFbX2f%dcW*C=Jqj^y_Eay0g*|*otM-&5Uam|<_zT~%_Q7Mx$g)#IVc>@<`rofy-UK~4Stvy)tvNpF;2J!V@y9*lU z#m*H#MExLs-Pq!ZH%9FjqrbudIPB>Hi*cj1I<3^mvS1$q zl%qk=y2D2Nk&W4i$eU$|TEd2plq4)>5OtkU2PnschmUB6?Ff^oA{QbSm`Rv?PP(E3aHSW0i>MI8wOYe# zXO(>>xZKKgvun<4>Tp5B9d?WbxdMsm1{~j)3n;@%0|pN%xptrXTXZwj(hV;a0Vp6q zxWIgbD5DG)$|eBAdGm4=ZY{$FgE3O$O4ALL^%0rry%r8&n;vaNEfo-G+XIo_Dp#PD z3Z(i4O1{iUfjevgFV;m^a5ZBilF2+YG~NkpG)E|b|2zH)$IS-26PXh88au?9vWJmO z4sj&%K!(F|eKF3~r%;wPuii-8{tb~RoUWwC@kqyJQ&U@v*VS^QqcD=plTbJZG~8Hn z&UZ<1>9NFDyD0*dP03-JGj&xb&5NQeamFhI5KLFnFry5pKM zB5;GUMa|O}@y791qSD1TP%C}hg6d|q0`%Z{e&zUgY?EaLDY#kI6AD2!h_s$3RPt4r zb-f$btHZtVO3WtFi=5{X{0oB^R|2XNoKM_ay**G^Z$7>xf2P*zlhZ5xOq|TwuRIN{ zW%4N|UP+`+I)de~Ozv+t)Vk>GMat=y(S2S$Za`#E{?C~_<)9P&oCbrI^sf|X`!lS& zws+HW6X|`0qC5F$Ky!gi0E@8?MX0?2x>l(&-Dp&&=L>jd>8dZcRVZjX*l z;}1lGPaV-}{?9^X6+tW<{56ZIpk{_rC94Oo8!tRNq_=?jkqMx(76m>oy>Kx|RX0yV zR)TOlzu=R7s(FTx{hHi5hoU{(xr;gTj88Ist;pv;gMEy&QJZVM(@bXtmKya-9Eqo}LgHV3*jmgZK{x_^Vl z18sldoQ7-VhbD+Luzm4rg*;w(xi$Dc2Q}FroA%6#h4`L?RnlMvtATiW$LxTa<2N&s zUyWyXGl39Tdl9K}<}EEnCXM~`y~H)9y6V_FySf`%^wbU6Vvc;$T{K{wES@8Ujd51X zQX|r7VK?_=HZC9yXo0ro0o~r}v{){rnw3~*(IhibO~_|gcSD$6$z)KPh?=6GuBpC$ zQ#IqCYN@iIp6PQoLlVsbUyLBAyq$>$-2B?X*aYOkH;nG9dSVP%a-RfoZ6q23FXMkhY_E)S=aHbv7u+8hZ zppIEYD1T>YCtmuD(JZ0C7=;d<&SQ#ph}|LMOp6NxHHko}fvPaBWT5&igp-{(Q1xtU zj6&2x#63nk&(I+bxhmKImoS?U!2FhC?KzoV-j1;@>yZv6r-MU&6AUk9Sez zF`{NEy`c*#9sAbiw_VUqvG5zBswtGTeqn|@FY>*r^Z=f%(kADllI6gIOkHi^31045 z01a(g5jq6XG$GNnPy#$6w!nf*l;BZ*+u(?Kjkqh`iZ~Dy!j~bLoJ}Hw~VuHmeUu zVH2lR!wm(w7+X^uQshedB~9qqTynmQ=SVNRnNw(uUf$^x2_2$GSAZyEfarwUk(`{f z$ZW~d_wxQRRe?6F9~)@vMgAsW7XnI6UGbz?0~NW(3*WA`9#Ho;t*{itGOu5(ir6~dQi@N{y<7#!aVN&P_ZF`($>KnT}_&2L+_1slXERu=AT5|t*?&Rqct%zlsb8|KUgfoQ@z|<*(sQw zwo#_#@d>4;1;+FC2qDzRi-kr4t}G2%g=qFAkW#->w4CD)p{76{qKso`*5-HSUv2)X z$ah3U`jH#xqTdVrR_Ck3?^3`|%J9OIl(e2C)m^Q+$1L%}DC@x})pWQGff6Q#!g@31 zbj*>vons*{vY)?B{;Pgnb{Up-@ECX$Ro)CfMcLznjr`8A9qG#YqztxG71-&fJXpgf z**f)Yohck@PAP$Qw{SgDPtYa@>sv)7NPSCQa|P&2n@6pG*}&C2Ge^Kmp72Kd`dP1E zAT`ES@8xz{*w`(l$qO6H+Pj830UF(F7W~UROPFt=*tLftwWgroO&a=;7^T0RW%t<- z*Dvj3lO8F*l5%F$d618cW3t0eB1M*h3zhQ@Ch+_%MoynT7`9k%yO_8Fo0N^jOh+ah zWy%_6Hlp3*obwK(kx@`4^`JgqbRUIeOem~={`HJe+!|AY+SL>QK>i+=gpULbO&91V zXC&Ij5HgY^il}WYApKO}BHAti)TN{VJgtQaj4gq{Ak-wuw#4fXk|8_N^f&_>^@9wc zxuFCY76e^mPGFTjE?8gojPBDIli#>jnEOxF81JGBaEFS%tb|iYkooEfMbe1`mQ36j zSW+%9El`t_o|OFIH3Lg}1`1Q(0uy-AS$z&%9d1FXs)78Jz_dX%1IKm*3abs;mb$$> zD=M&L%$mTG+JWeM*|h^pa$Z={J^$mj2lKDpo?1}5sLHl}+Y#H?2H(4J^mZ)Z=cL_u zXPE>4zE$vs&}!wtl3Erf00a5`cK&5_ULH3#u;EPcqZ(00M?RyMq0e{*k^Q=$&6`jA#mGy@6Wb5HsIIE z6?D4_>xzB!TA}V+WP$PzGMphPiJGB@WdgU2gAHoo#c)nJ8_EvO_o7Ga0Pc%_16q%= zcqr4^^$2BUnTgcogdsQu`X}h9HpDZX(esI-!6ykc*#^PAqo;CZt!dTz7c$k6nTUiy zxgyO52NVb4P!^T&bB6x>1sz$KKM{yG!5Hl$3jDbI6MSI3T|$J^VPJG<}sP;PePEP9xZ zx7uU`#Cj$7C7Djl;NmeMy_G8`a z_IqvA4aVizgKV^d1%MUlS{tosqnujLvC&F#j3yB^_aUk1=w)8s(A&~o%0i{{m zgH3VCzd8pM9n%M8*D`W?;dzQPWz1_#SR9hf>FIoG@-xUS{rv39O{xkF%WlG!BljKayGcpxw6Tef<_U~`*_rH8!ZQWpWz;z?)W>3K1Qzlj zi9W|>uy1oQv6p$=Bh{$hK$6Y`n(@m=TB%O)#K{DN^yZ~>xS)@--A30FGt2th(OBf= zZ5?h$gH!1XmXmR&fN?uUD=K|xRy`xA`0z%)R|4qQBA$#s20@*UG6Io(nfzk^SKRzi zRdY>+eZ-`exw($MYol%=nYqn2>L!wzd&x%KL_$lC5;Y$J*1nap2NblR>zkWMx6h^Q zvPmrDt8GO`Q8YS>=y8jV1ttgVQj1R9W||hYLyuMVAW<{5dt%73-Zll6MwB6k7Gx&# z2a{!7&c$@#!czYOY{=6|4-@yDi|MEbHvEZ;RU!s{!kd!X2!NN=Pm|7mE6z)){S;{l zt93#TfkZ1qaCJ<<*^D(?)Lk7l>7gnXoMTt6g^#D&Nf*|%u!ETSst0u#)se0=S(d%Y z&*LfOZ&p4xCMpf)moaVUmy4e-QFXC{DpI1qS*kT{5Qr|R5iYKYr#xJZQ_^s8C44=Q z&f(%zFZQzy@Jit}RHW?M(a(S^hv1ugf_l?_s`2%Z{ON5nw)Ib^)Ap@2cS5CexiBJc zY4h5YUmx(xXXfvQLFq}gK(B3H-s4Kg5L4K#Tm@NMyHsL(Af3}1`?t=x1*2}D*E?R` zbreJnd#mvp==O2>E^z)$f2MY>l(Pqi0^A*gHP)&9^bXngn_n0UzQxli`?mDS**BY3 zXns^3(rbDpFRvSLbYv#S2zNwQ05EwU7i}U9?GWc^ zIX$q0>8{)@`%=vTq{j3 zifXY;MQeo)j}5jC9mbLpqD!H}m`2ZqRzrs?XTM{6NmBMd%}VOyG#PBh?VI4$_6p?$ ziuonRd%4e2+bprAkh$VXx=Lja%Dl)sM0IKk56BRkKku*l2WhzK4WtW(??%9`pO)E3xJ1%ww_7Vi!sAdr2YD+@onhg=h*g5M_Hl=S6& zlkDDRUOb&;6q`x1meY6=ExHZ{YbijAdF>3%<_e_qh~>eI=#B5$BKy{wkd!DnLLkZk`haZYA=)sf3p7$}3R$iyLsQ#Z~rNKG1iSn~r)ei{%yx~N7=NYa>$WK4!-pY9-x z^z8d%W-gg71$Mks}!%V^ek={Rhj6-lt)+uHK z$?4Ox&vz*d;`1bw9)abmIr~hI0{Nw-vzhPflpTOxl4?PEGn9O)W(MVDX@YFX$+RHU zf8Yi8s5uD`^p{_R_HN^uatNB^v%+8+WI?W`nRcbY*vTC3i$gqS2b`S03@ z1UVhvY9o^4C@inoh{QPS{An9OiaWqe?-T((9g*lJ9Q7g3mQjZRwa7-)2n0CWM$`zD zJK09m2qQMqM$`zj)Za#=Du7r|8>td+5nl4+cv`%e7M0!5W(z)zRkIPn2k&E_t9ybE z-oM%i@Dq4HDJatrY@tIe!WrlIgG(0?+L`$~birb0nl6__&-e*QBgzuRf0FzA(W3_i zx}0+|D`&QzPL0Bh6niJ5Pp}paeEKAD^Z{tY+|D0&hNKT)`~b0sHm|THFnwRE5}%M3 zF0STW!^6c@a57<+i7LPjIb2-Xi{8^5S)4y4ZBY9mZIFE%n0jnbZy)&Q;ufT1ryi3w zXh}|+K-*sf`P&Yx{kSugb9Q6C4usddNm=H4_Gx9xYzrx3D;G}W6K{Lh(=c{`17F-D z9b`x#ke^YL7OW zsL9>7U3Divjk9OoTc&@P{Y98px(32qY6hZzdXedLD>MJtf!L}tWuhB%_GeC;_IJ^q zaB(@LDxC`~>Axm(NdvmV@pM{d+dUZ7Tw~pBW5-WNJ6eoS$F|T1{tRRk)X?RtH;85y zUbj0l|L4LHyF-VoEI1uS@0Q4p?8`Y}$!1&I0UJ(!f4W(T0@|e>t{mK_6QyGtt;a^u zsa{iv;nTpuPbnPm`hDsbS6OQB7o5HHNAKcjvVTVCV~GrS|M-or>@KP=VB6lfWYN)M zMOD3~Axe?oUu}7-1DGGvvN=hqoLvNrS4BLT`R2g7<#r%;7gVAb(Trnq$2oYQ|CKGu zWNhe8AyW>{WT`&0uwP0_0srehR|tO1130-CwTORz1?%@!B$@yz;o=(Xh1qJeDYxWQ zo$Ur%>9+o&TjsGpE1*9sV57eR-Z-%3dON?zt$Jeim>3v(FsgYgyc z*I zkLbHh|J`(W-n^5W4rLN6F&*;qZY9M_n-9&CB!X^c{zpUd;X28P_Bbh`?UN8KA^&Zm zH4L1nXGnX+ciX;Eg$;A`8VD|yWur=@V9Jsm2Dvf+}b#J;5^D@Y+!E7m?Idk2HCsG zY-~*w%}cTH*0N@7S|Y5hE655Lvlyyc_F2!1?Z8eKF0SLn_8^YJ#kF`U!E-6mMU%8d z-u4+$Vs(^eMo(RHGP1e<-4n?sI-FC45;j|!v^U=lo>nxZ{6~o(rNl{u=LsbwLcFWG z#;88#@f%;+SiakK{U2Ahx%y-)`-|NtS=l=?lkq=pWv3)MkinIq#Df1fdoy3;v5y|} zW<2Y_yNL|DmTze7)^T
GIQuzm-;s)f6LHh%(M=C6Si++DheKnBdx#Mcx1OYLR* z94_{}=mCriL*QLQ;9c0Ys%#A$q3s-jX(^`f_DP%JKo-}YC)5HzG@as0$pCtCscyqntZx&T|44>p?O3p`y9zD<%&4^=?-9@Q^{2_?QP2TDeZ0RH- zu`?7c8S^Fuk*<=F%kHG}Fbl^Wq-urNi0hTfd90-2WJV~SA|_H4bz{a$a{J8i*6|@! zl#vYwNHLX|Sih9%K>~xu>vh}B&kUNoS$3?`?^F4YZ5GBz28a+ ztN)f&!urm$O4v^mof1~9L})v`b|sw|L3 z?7rd(YP02a-WYK6BE}1ULgFNy`v7TX z5#TXf4QamguyL2^0? zxvfu{`c543u)kKKCKQBg@H+bML(+s%KH1sg@e0C6X@Yi~g0PFka50`G&FQYcM#IHT zyvU=K61`4dr73j!L@xNpPM-_r?=_EMDa_>3yQn#m4OE|yIo@AEmg$M=$VwFTpHA?E z^UX1{?&Qfm>d8IoFvF7Gj#mlzHGef{GxmR>=*;ZnD7wG!E$nvXY)jFNC;SJBKI^ID zDZ2Lb5{gC!9VkmYV}l$%%|`4Ip)HU3y{+Koj%H(Gp8cISi7apL1NNp2e;nDBbsYOx zeNtPInm*orXoX=q*o?GVq}j)e%p*{(?wC#bl@oufk65PN)(d~9f(Q7sZLtUqETE+f zpSCj6h$`;WR)(c5@k@AKd?nttB(W0lp-d!SW0S|Q!|aOL$yKi8g+T zj`}tmiyXo!bKnyz11*HkEDA#Y|b8S>d)Ggaz<6iK4V4)g7gM!>_rSu{)kS zgh(@*#Bgz4ObP>&mAd1%mY>bH1a};3cxPK&8yXV`ziKy0Ui7u|nZ8^_G<_Kb6$=Bq zLx=d3z!)eaGyf1vMPruL3iQ}vV*9TnS;iRwA5$e0TYcr=7jQLmIu*jjjqp{fpnm$> zUdy+VSMYh@cH#=|3T_e&P6Ecaz5fese_Nl+Ed9X&9^u#?h8ZqyfCI-F8p-4KNUyQ+ zJdtz0@Wx3vXMU~!4d*;gnSA-i66%g?jEJB6OOn%)lJjh`C0R?-85=6oqfk%GF^y_7 z_aE@bAJ%Yj8mG*VmoFER$9J#xYbWT5@BcG-e7F14{XgxY;2yx)YsTP}AX>C4f*JJ# zHtEeimpKfV`4R4522jTGT$!a%kiB~xnk!wz&yi4NKmf>dvq8v%O zn8b}iSTpZ!MYl1HCIS#8o0=>|w27BQa>iKLUu4iSX3D417-<|+WN5AZ5VN+=9+Fl+KJ=q zP4v_6hy7d}*K`hX9o3#x@@Dj36}_7pu^Q19b+;(enb}I+4OyjES@1p;{xWk(@u`9# z|5d}e1apT^JHvRZAE|6UC7sbND+}vk90Ok@F>XPL>>hYhv4Nc-yq`~45Q zowaN}v2PqFA)eb5mk>#|;Cs&z3)CtWgB6R5?|_k`We&U(X4?HNKO1I-RVwz{L@GAo zZ5fqRHL&D=y+>|-vGf~{+GZd203H7y*5fz9vlT41!OjZ)ZG){8JYs{VDtOceJq3>` z=;dA5M$`SKKRz-zV>(P`pAWKIKG8^i$3_i|jO0TC+ZM+c48f9lR1c-@I5nq4?Md^~ z<7yGaWy`^&gv#`^C5v|xif-g^jxyV9Ou#T;7Y>(^*ULQuT+fi8U;D5h2;lWQb(xmsL5v}F!77UVfG8`Tvi139UZHj z1KGpE;KqZ(8_Qvjjh%%sS%O?{w0Ed(2DGnQN z0h(D(zPmc5PboD12HGnR1bCPet#?t_EKv#uBkdU=tP>@XNGKcQyc$)YT-)4qa$$`>R!9A5s{ZytuN@kc>G8fD*o+a z8w+^_o?8iZxCCLzw;a(_N4^Q#Jx;|OH{)cKJLI(!DK~PbCh5O=@UGzyc zClB7Ni&2HzfZ%`d;6(|t7b26E)Blg=o=)1*`e$y|+|y&BV{Kps|CCojg_L=RjOJV@nZ?)I7(yLY?!#|68TzaT~7IQCQcNTMt)lN@t%QabK zvYmirPeY1BCjp12+U(vl?})a(OxOzGu2iHru&RN!_~~)iC~YaCn(gE+Pf% zFLxM?KDFhTzdOM@C6NC~;NU0eI=%ZOkZ<`vl7XGsw@8Jr>>gOc1}WV2TCuW!U^E^Q z@Y_DW_?r)FFru~WEMn4LjK7!cEvUkCqwn5Ba+Eirtj;Qy&%%75F;2IBw8 zs1>~AxOIEwD|X%9H_ooxK;S>D+sStwzi!VNnY?agkBOg@W-W>@+yABJc<{i15t{XC zn)Sz<(p4TeFx@+7w6>Zm&?B#8ujvJ`~tL;e5heF_RO$Pplk?MwIz@s3^pk0SfB{v$nXqhHG$iht}kC0>tW#Kfe!+O@K@3osP}=P2)8H`k%Vn zxm2Qy%7M`gZbKfF`y|p?bo-|0YKU$vJOHgpS_XO@^}=TWoXbTBO>PoZSx^)>_Vx+J zm`-fBPc+7~SS3kW%8Z>o?Y~RO+vwQIq~!7D`4M#e1XJ7q5}n0~fOcj+ckGi!RB<|O ze>>aX(w5Ba3*)4kk!;CaX_HG^GP6_DJC?R)E-5K>Qfp?_>jk{DHS-jZ)NbH);dC-< z=72Abvu1L%NvHqYRiRCiVog7B(WKQAY^IfSBLl6K69s5|<)nJC zQ(7SfN9mcr&4@l;6$wAbuStdBIH9y4TLNjB)Mq}4yc%X+G?neCv`sh?YlvL~ZgDTs zHzMX4e%H|i7-ToJHm>EdG5vX0NX)Pge1^gE zqHj>nJW0?Q)f2j$T(PV!hbNY`tD_o~(&d;;>2fm{(7e^<#0SbAXKEfquCu~qBzq*C zS(04Synte9O-1HTjAC>tRu>GNMe8Ya0@ehgaEH-$F0NES2%jHel*-aOUw?yCOpDea z!x^&q94*8tzN=L1Glo9C6T}C%wnm^W?$C4_O2c_tl=uRF+-46eZ>4`x?E#x24Vn~v zEyvu%pQQbV&ujgmxOjfNvm7TU4vhvRQhBMbB)L;bvb+`JCr=GZl9Ty$N=b5BQt5wR z8E-Mex6P-*enUMwVkRk;`pdZ!bX4ZRC0D6n38yyc45pS-7;VfhCmB#M)h#4`GPkI- zu~7aAoBq1bmu&iHct36Y&6^h(%b($w@n`H+B<-K!6@U4gcf*viM0OC_NhEL?fh`33 zT(!jdARYYVRlF09d41o_zvUM24X=5Pzh$y(hSxmFZ%R(Zz`?s;AVl8}JcgHD#)b}b z)J$U`q)*}Y*Kj^;n?}MgW)x->8K_^bR-ebO=|)amy?&fw5jT@#lAM?CB5txUwn8=# z?;to1>x3H{US41A7*M&}!He;Ng-Xro1WOhZ>kkLuC>hQ%n(ui&gW_Rkl2TGip!9WU zZd%34T2P||>KK?M6@sbn@f95H0L7*^!V$#LTdH_XYC@`x6lZ-1(kbczH&dSafFAWm zhR86zoQU|SrgGh3621hO)R=ticpnlrJNcs}qRGD%4{ogOy zbYtd{%Nk^O>ko1X_|nWf%e>0ClsPc>87LDiwIfb-nT4$elc96Ge%|V{Rn`{D%>VAd z0F}e<4sW@=xZP%i-bw4S18fzg{v zU($@G@#Q~F5rXbdCQmc^Bfn-0@)Ho{%`q#tHkz}Vk;~(_*HW5|wPWHOLGW1yo&>^r zscVeJ9t_|%ZZM<6%IqEl-GUH(lh# zXLlNahM7^zMq;mkgX6q8pIXzGnGRJX^$H?Bs$LD_@-d{M3zQKQ1*7|b+QWRHUu|kW zk+(UwOE+*M_-@X{$#yQr$(N66E8k=|V5OVN5Ki#M0Fvh)T3 z-PA{;(wi>)h_6F`N<4f8waqB1oS>KuynsHgVlBu)F>%Upq67CZw%;e}2IoJOtQ))u zC9(AXM3^Ko{gWDBDV$(o3IPH}fc|*GYAR zA#1jI1l>TJ9E8B=MdsuG}P>gJ8)N>5*0Jx!iW? zr~&?g`Q;;1Fe%KtAJ|A$BA9o#5pfzrRnrJvgH+VF*GbLH-=PeYxEG0uk(g@{gkWSb zxm=hm)tE%O?k4z@HL#ZG7Qs4RqzdGu`J4*?bA*~to^#IgJm)#jc@D24 z8mHvF{Tz2_F7Hi0wfHAf+uL$p#i_U~;MAq^iG`>nJC|fAF7RXh$9*9fiK+dPCT2)? z$eOf;>{tF5tA8bj@Wb%jbu@>`e|zwtljElh<&+fI&GK5%O%Kn&PAkoA!HS`_7zjr% zcXvzqEpP%^x@pBT6y8D(L_vsYgVamv*4Id-O@*Gf0{$h*{3iqcDl6xz_2L|}ZHKT>n^6~#%c zLR;=nc78@iRWnQdhJ4|qLPDgQo5{rkZ)U=y{gksRASWUH^-KjTaT(exyfQNx>@>$i zKLt`&ec94N?kL^BPC+cI_$L1u34J6~dX~@`WZV%-aDY^3>uJ~9N37f^y5_wrDf-MJpXzs6gTFx9fF?TKHYoP_qcB?~Jq~4)E?6IrXB?dE!$5 z--+C&bU)1(nQ|$qEHY&`M|iJ1%?o6~gij)y8I1*Ym{F#A3wpjN(xhwbLCcv`?`o4U+Oryaru zD=+88{2j?SkfK!%RKb*LNU3^;Fi1%@zY`I1uqH0_2=8<&;04xl=0g$cIsv0dCU1fk zcuwgaJu;Fdhj(4oFl-q79r?_#J~ND3b^Pl#e-|NUqL!DvPp%OdfJ`lCmA&gc&TmDG z(v3Sg4s;+o{8E{x*$i4Ui%t^sL+kK z3ObXE)$!^>P7zM?bv8%xCER9|3YF7!$TSzJ4;eU!T?OhxPQP(Ptrs7Vop$DLMHt7? z>!rXYS+rz+vg`-Gr1xYQKqBCp;+26;1#fOnO9EO_fr3x#f{Nj+cvwBZLz5P>_$V%~ z=&U3kg3Z}1y1CBda&o90K37FQ5wad2ojvyqUd>9G7;xx0ifh-Jf1@y#Be#&oJVS-S znrh9jK30p->$JJ6)Dm{3c{?H$oekndZDHQMM#^1h3HRqo$$j|)OUGCmmM)t$!7Ipu ze!%<(eIkO^I~YC-x;8OX67t}94mgW&hGysttdL{`Z^p%mxa|3(jGH>fi#1z0OIRZ? zsE*4rSAd=WNr&A23Plgq$+WM;C_3Xwr9(bb| zo_%A2R;IRy)cK^cB?ijj<~(Kc=C%y& z{(s7_g|=1{x^Ya7G@B!`(nV5CLhvP(Xc-WE85+g;(>F7<8e^FlQ5BD>$k9UWNgT@& zp-wq)QQq(n>h`ioAZ2FS&TqQ?$RrlcE!Xd3IosKqd84epE#X8u!vA*EIfc@Xequne zGE7AtI2kDF<~&DsCZ9tcv@^R2WJ*7m23r$ZZN-SzxazBaXoagjeNuC-+QjN-6JF3P zzRDh3lC7>thBnbc{Vf&Dxw!vwD<>Z9jmfrac}F3XA2XMb-?PlegDne_2$Wt0)?30#V+%CX#$`%30=8r+m4c0r~Eqn<#cXwOd3S zrOh;{Xg8vo;O%B1fZ*+?JWbJ$Tgi}YJd$iR$vEU;%4#?P>D=d-{^q+<0PAh9;u`D% z$r@X{YuUIq%ReB&3~l~GI@4MV{|7k%cS_p4v2Rnrhj2Y{237eEFQ$v2gvw$yQ)}JSQ6B3I(RZLQafS%M zy7mt~r1-_;5jjrDUYU#pk-eVesbsd_@M897hDbH5c`}?t z?=ezp%Hn$Oa}pr2(mhdTGhjU3L zU?H=8h$`c@IS>hq1D$q}+Wf50=4uWe$9(W@!ss!m%t9TMh^P zvDSuzo^I>TxCOvt9dKm>*iHw)(qL=}7p&tg1XkrX$>1TUR{4mSt{ijMZ~O)JO1s&L zR?g6-7TQ0^ylCsitWj6Hq&!*CcGV+SK=qH;%ej@t_7N!J?}+n34su95ARt>?fu(dv zaOL2ixF)zJx^8g&bm9u>#gQU3;f1(z8hQ;Tvhw?zxdOb8q|-!JDH}GKe)$zK*AfGBJ5K6}Gq-tXS7(*Ek9Ra&u(811?FzNZMF{W= z0h>5`<=||=#`JTu?_JiKK(^xHlt30%XUfq_`AQI#f7wifuPk?mIxAHy1={$)&RFHbk`0(%@zEytR5f#>DBsbWBzw@uNHeBS`&I(VMsPpSYaI*UgNr_e~2|FC>U zEDYmkRyk(5T|Q;DFkG2l+}d>i#Y3%3_ueqSwCUceV*AHAJiGN00m|}VqSlFR#($Wv`pQcg@pNzhFeWC%X+`>dU(aof7am^W+*y0K= z1cgwB^Pscf@D?J(G^tEm3^0j3E}6+Ul2Fp1=Kjnbe>;7TOAPm{J+5j=u z_JC)Jpx;&1&OBiSFjMM$3leOB*}?qcGb#LY7FJ7$Sw(hHD?Z3H5*@TsE3OgIz5=nW zPH}!nAx9m$L|n2wm@7+dyxYLHL^S*kklS!<^9jCa%ys1WpHwP~SyncgDla{trpo3* zHC5)HdX%a1$J?4umHP@>pDOP1RicfAYoBHO<#iS|mkUn{1sIGKA9Y^YZO)WxwaDIwhS-zJYER_cLZTA|NDg~zd{?x; zq)u&(d&0L>y8>^k?eQZ&^LKRz7She8Q;c=FYh z(2P7N7j}r~cu_(Y3=kjdm$nwVLjq3JLO1g?SCL$?Q%btFX-Q95CE+(vUTU7eJA^j> ze90tUYOU#S*+-ptOjlK^Z>6J=xJtdMZ#~*ehh;Hbm7|Pb{JJWEd4phOV9hoPgnk{3B^br<<)C+E-Pf&tmqKzDo@gT&e= zvXsPq`F2@5ASjc2SYMKsJNSyJ%giJQeq^35r780qHOB1M5|V%+h@=*p{SV;mPBKY; zEfKK1@84u5{LJ4|wqDpA;i}E~;z-dlySvm zm8F4O!H4;&6=J^nh7uTFk>MqG^o)C%$bYhz2DX%ag9tX}OZ-U#((KPj7M-MA173NG zC`u!wNQ}=Dq>KkzAcHY+Hozs3fl4>mYKg26e6%{*k_>6d_x}RBwzK&X+x@6XSh4^L ze2;G%F{r|7tS=ieFI!)-p9Yk#BMO;M5>z!jTb&Hc24n47oD54>5tbCT#@YtWOR=`3 zl3>T`|G!oZFR-|5A__enQlij%XDLzWz8*&rg?|0>=AzJD`RSt2L{@)Ei_2$6FmuAT z+sO1YSdnCebq4E!P5bHV2L8xAFsd0O)}5c%V1Ni2ERvz{od^@Je?O( z$~6K^Ea_TocDqQR+E?bAy}0lGX^m^OOJeTk%Q|EwL*om+nB~d@c13MsE?EOU^HZu^ zfow}*=CedvklA!uNS30@{;oVSg*@Z^@gd5KJuCVV(T7y>75L(yb!f5y#l?6Z_hod=0J{H z-Ej)0{O5k1K6Fz`?}ToJc_R$_*JX(zk-m#G(+=gt+TN#ykz)N5E>e43u(9X^f3a+K zFzL8ODs1d6lFNyp(|jF$f;w61b}CyXZ^0+5$7~mBUqx5Sk`^Y=)B);}xq{lnQIofU z46`e7y>V>Ro=#hjjau$+P^C3!4HI31mq*SV=*l{30=nZSYUVZW8H8r)wVm!l$Rp%zEqJ_y9LFC>MWv`9kfr9H%oB&_NL1!oydoeMe5>+Mmc=KBJWJf~ zC`e5W?DS{L)L8I>9WX_!Ec*`u6^Q_D2|D*X0wxncaSd=*d%{xQ#v#*=Co*BCcY8$_Zn(IL={WasVq+bOr&e^=LJ{5}x~zRLkeV(L{n(w^QR&kQtNsLkz6s8%VX#oU9Q5e}myAag!N2s0B=joWzVf55kN!h@tN z9yGl?Hj@=43(wd|T+oP6E%xn%2rgxd?rR~oTybL5m|J;OJf9nOoyzbqTbm!EE|0U` zd@;QmiZ7JnA;qHS5LlqKfH4RKWR|L4jr5DAxf5pt@cmF`9ww1BTTq|QJ-7i3e8Zo> z-MK^jovOxn4IIX7Og0>W&b%2p&sr*(C$F{W{tM)n9)FpqG6->1b!)Fs^%?q2j}uey z`alDQ65mpWSTkDIlk=-Zy&JDq_Km>)59`y~x8yyM60PY2e44-FkLr~Ll8_EiJ;TM- z{U}ydcZZ~)qPgc1vQ*elpaG@fZE?9*;2y$EG1c&Qv06`e1m&nobLHHu(_53Grrw<{ zMb%TbDF1>T3#-uYp=_8_Dhs!TT{O$m(#7ws%mdOP2dk_1c`N3 zFO)oCcyV&S2&&&j-0G+Hif|q4Ul-evP=IsM;170ozqpT*4^qzVU#d`x zzRkeLHpl!NS@i8^Pb}%|-tx05_nlfMh0~72l%Li6j;ADLQg|o!`_`gQnvT5p4?G*& zc4BEu!QUlAn;e#|Oa1I_ZJhXIGb8@)YGre*4xS9u&4hO~ z^eiL(R0r>Dt%J9;(ZMI2s5*G~3TT87#DjpN=JyIRq3{wqx1BIC_F4>@gdlw&Afx_* z#+e-zUvoiMpb29okL!5LcxntESgW3ZwQAt*6R>CA{ye$|S2v|XoBt6X2#2VyS7Q$O zJ(t@iEh4!t^GQ~(+Ty&xVea{Tk#Yiui|}&63oHo=HtlWmMHV0s?TTM0sO40iknrFy z5Dsmq2Ut)C<*MnbD=|EyB|Qc5$Z$S@R=inPUD-}WDASS1a6V|KYzANl%3snR7npTi zq4_r?ZJ|G*jgrYGd(iIH>N9bmX}+xcSX7g4k&57U6Ka)<&s2?aJh4j8Rx}gFAQzvR zefT5Dy-0KfAa@8YFz?~Rc7t726Oa2nfxC}q8UAkwDY;y?#B&izD&JS4q z8=ry0u#A0F$v{(1q6nW!U810sp*mN5xtVA1M?pB9EU}YRAKywF{9RC07y5JHTjozx z;R(CB=4|9*mhCN&(YeLVgs@?>kjv)*Zp%kQF(8{>D9{%F6}@+QLe z{Wcy?|IMv!On(37-PC(}8hPJwl(@xM5J>#;X7P#onm?PD`+rscu)28sO15`e`)yg< z7?COmG{*ms7mt_XS*ESubL2bPZ*2Q`GVa41 z>%GB#Ci46v?fVqc-_37iT9~A}quF;N@3EdgX8i+?G{zqThw>Zpz4biaekQ_qrlq-& zxbb|~riDqmInBNkd5`t{G3y^Vn)$)6-Fa>Qmd=gGkNO*#id%h!^&YjKi9DOq()8s0 z5Wf*=VUq6dX5ZbfN|l=^r`2a#zW>+ye?13$RQ=!l{+F^P&;OF|Xl>{@IMudQc3TU< zeIkAM%Xqv;kJR@B;=U!_)Mj|WWGk8HjIXTs2pi*xa*p;qR{fIiht_}R>GAll`2B5T zW1GL+SY!NXzt^+k$+*kx_Z!o~B;QGC-}89i%J1dOR6a@bQM2!()z>`y$E-hiCb9*; zS>U6s-!*7{j`rKvh`eIQk8oJ&I@r%d__lZ|O(k(X`F=JnOwtW)_MOOktmlte{|sns z;y0Q;d%e1`)!*)DWBh18V}B~{p##?YFYIR`&(O5*WxW4`JU!FGB;BU8auWG|$n(dn zU&d&h-whu&w)wm8)_DAAzxUx;iMX>EEAqY*{+0-n=ZduNpOdD6JoD1RB+Y5fzSHx! z_5Nel-{lwa_`0te|4)AZOWBg=f5~^WHh9w7_mf{*ZT&a6Po%$w_pLXlz8~fLAbIXi z%O`2SwDZb)gt;xx3)0F-l-K-utokMW53PSXbGO^Q@p$4X@8=OFzXR_!#&$=7@c8osf>&HYJVnlRi zjmHQfB%!K_l<;sH2XsSh4RdwFUtgu?EbxBh3Fk-qe|Z}FkmRDwx)LcGRmWSr=E`gI z>tgw?Mgv2>vd7$!5{|Z%Eu74zc%KD@j>#^qE4vaU>`#_0l8=&H^*7(mi7+t=bJdj$ zwx6Tr>8=ZGmxB3+f$4LlRTq?1?)Mna%uoQ&tkx=T#I+(Nj@FIPbpm&!v@cbLCh@*R zN}#5|K<v}3ba=A^Pyi|qgG@`THt^bOX-AqkM1Onv?N5EL3~QmxZYEum3+waUNI zI&CqxLRRNgZt#CyHux*w9q#fGb}L8G%FCNJ5>@`%==#Ib&g0zWqms=$iDnv`?N(Nu zU^lUy16zmk4yQY$TfFRyg*A8ixK2jl*tY(P4Tq&|dZynzoJ2lKR9s ztkHb{GVFa!H=MSMg3wDn80<&Kbo92CK#1jLsj;&K2=6pJ>@csOydS6e`wsmV%^yPD z(K$J7H~%W>qp){jTJsm-hc#j!D2KD6@NA2cD0{G~l`CA3ekHOLMTf%d6j&}2R0Q6$U zQD&JKWPp=dNFNDScEK^Q@#lRlu+iZt)9VcCHfJ*w1^*snMRYPuUxWv@vC-Vb&Qdep zp5*KK7GM7X!b`W7&$$4{;r#n@d*XHOYfKsp~QlX^F+h@|P5`RSm~Hg?a{O)L~-jw<`CRR{5Y~;^xLC1y@eQl-Y!}`{rgs04lTn} z`E|7#h?XL$CffZI%tV7TU+0+IRlLap$rzq*-ose;3gce{yOX)Senzvo%^F(=C&Cw* zz6EfWj=BR9)<>@P2_E;jU zBZ(hNg)g$h@n1|Qx#!HtR}-}IkoDEi`f}17;*=r)CuQLpqoJSqpZ~QZ~lw^ zdGH(h=R;Y#HlKV=`sZoTl;|HBhgSc1d9(VbpShXllnwq4`nTr?(Z8=-0NJBex-^CX zWC|V;zRnd&N z@J$&RE0I&o|45(2Ygk&xIto(}6$sxHnmiS3&fhKiq7`*z;^mDdzU``NuP6qq=fI)M zTO)|&Z4ty*Vl7&05yY>Iy-9+Y6n+lJ=#!zc)NQj*az)@aHtI&E)ieG!Y4Z6kLFf#^ z(ZaL@px|o&s8Nf}jV)jZ;~nH+xriUygA*|CNeqk8yfZ8^wFiewDDDN9u45K0Q};P( zp7px3)@|gP1w_J_64In?Y^ZMIK$B%%-xc}`^t&y5-n6p?K6|%1dgjXTJ|GLZW~fZ+ z&df`sF0t)avPgUDu+sZqAO}z)?nN}ck0qU4Uh%Q`hxpK(tW4+M71qQB)UWH|S41=C zF=`nyp0Ls~dcsQQ7`?9o9iOq$7{;~KuRFBLe;uP?_nR#mCPs~=#@^%#rH8F!`6W#= z=OL&tJQLU?sW8g@$XE&4T-1SDXg7Fn3!&Xw)_aPocUw!@e4LDqr(|{5TsD7#TA*Q| z;RmqSHYZGFv;`j8kRaAXfvBs3s1i?BmT(+1mX3a4wdVEKVrgowt43ifmd%Y^z>9kZGw{5F4N3<-l`_VwZ1<+%jwn{tn zRSWof9j&x7LBs-Cg*TgSP+O5i%rMAE=)l{kl%riDyv}M__32b?Y__`~sZw3IlU9rm z&N$LjtE}014F02vKD}kp7XN8p^b<0+USX+dX=^_>?*;-Ucks}0Y@jp!Tw$dVE;VGT zz()-9zvVT0&F7h%4l9W+V?&|Ys<)4{q3L?}UJz&gp3*$VK6l-4>(X60B{5ulUq}Bl zP%&E5PfiHc0(WG5CWny3b;ZLpT^%Kg{?V<@8(~XIIeKIm2lL8A4^!TViwg0C@s9a4 z`P)Eyv~x>fPasQcI-hM{0r5`gjU{dgpG*lpq2t5=(mvLO$YTjWp|~uK>_c8jL8$To zp$I@Hm~Hl3^senK5ZUc0u-yi1v8z-kT{!iIV|36-Ez3QXa+`Hf)eeTii+fug*@!^q zKf$>y$KMw;99;!vul}Cd)}k#ZN}VnC3TDxg=*3ifl)VCT^A0f~PP!bq)g5faZR7kT10rK{q7C0#l}`r;1am_ufYT)>N%$ff?7zNzPHim(O0*&fVijX?dG&5 zS9;rRLCZ#+>EOx`Aax9q0k=%}(`5Z?^T~%5o zhgu(z-8ImnRW>LBG&Dz+X=mRmX5o!`Xam^etdc}oNvnEReymkakpSF`pBkWTj=^hv zy|l$W^x1@D)cwiK^Jb)ha(GQ}9rpZ+!63iBdsGZ2Hy8ZWdy{ zwI6Hiep2g0r2`Vhk?4S0(*@ZOQbTN}D(oUzLnPLNiS?mu-pnbIv4TH&`KXi2EodHl zT4~{|6BFUA6IFWOC5bhnZ+L<{`mRinM1T9lx^SVZD!IS;s%-Z?X_e3VR%%KTT>rA> z#Mb}M=7iSw*VsQ~_pq&z+IdThk$Q5gBh|N!VeteDO}fAN)KUz=#??8AcKT0DwA0^N zHjV9Nu&=Zg_TkTI(HaTqXSZ0bpD9BnE3^XD0$!{9GhcJwkV&k1rEtz0GKJN9Up2+m zY@RbSpn|$u*KXppo@_8+nP`ag<-^oYuQ3wOUzaqQHs5}VaR4G@IZ^hkIRo^R8VyOA z@I+fWpY#O?n#Cd)1j$jQ@-e9mUb}wI<5DHscY#q4M+9sOB7aBw8sj2**@j6?W@98b zt=!vmE{|704a)(l|_@8LLx z?1wP-q9Z0ZLWe-RZ1xS-=coZ-QEhkl&V1cgpH|M5_J&9I)2&K;{^<9&sGOXUn{q6) zfAO(2vnkr;s-f1hx9os9|P1h55UnIiV7W3L;n0r z{%qlocB*5*7S6(8qk1P#`TdLcMW11B2p=ATI3w>@^IRE?$8X|&Piqft~z zc|qR)!tXP_Gl)y)H_D#q+A(ezSol=!%}YY@8F|JbJ=}fRkjEWM93>9N>7`Z0j2B<5 z%bW5UyjsRT1|*E5z-`k0Y3vwJ_~L|f#;JYTqts3e%kM(_XIxSlu{LERjduFb-_@uy!b#l@9 z*1+KoQ@_M@fw$m0_`EN()Hux@@%6QKL8CcpIchmJ#kT2-sPj@03F5ZE8Eq(G-Gb(X zLtWo|B$H}m43(?85=;h@aweTF$bQCbMVZU7@ijEN0Ft-tbe>d=iVH}5k~QrtKQ0Z%TsTc@TSzc{(-!ym5iSo zoA0&NxXUTh9UflDSz$}%qLtO_#>hhRS*goT#;LjlG&W^lV8yCxHOn24UA0#Eq7|pA z*D7nRFI%Jhq4i}gs48XsHRoPMq_xUM^)Xt2)+#kfksiFa1Zg$jdewQoh}Yn2Q4%6D z{*n*V!yk9JT~p{g0=ETOXmT7uKRi6AX#zM$0@{!m9g!lpSqg}ig+N@tSt;_GrN|?N z)vD0hRtg+nG(jSy+Cn%E;;a2HuZ51#o<O7u|NcU*K0%fVR2z-nlF2?@YjXpKrRTo=lh%W%t(3kK?jx^Xr4Mf!|;+apMHcBO@2) zZFyK37Zg$@^S>;#-=merEcKjLx_h6NJFJs7pzH&G#=U*@@U%QVxFSyv?f3PPn;&mi z#rt>QwleNtNnZbQ%rjygc=P3XL*MxB=Il6ja?-A(-*=#W_U*?V1FPjCgr4ctgZkaU znRyOxE-h@g?{pPr!B}(8a?<7am&WD~td7lh z2j5y}-XjAe_*T@six*}8iEZdjKY83SaYZ^kRQ903uQAN@t~0LTKF{wwSn*jpUaV4B z*~HqD-W`9-W1I(R^wM32E~(fhuG*)W-h%Jl5x-5(2CD_A*s8Fu@fbU!0|zTZm1&!l zp~|MW9%p~*)Jl3v=|=LiRD9qD^bawuXzxrkC#S}1wZ*u1 zTtSv^$Z8U-E@_#%O)prhN2bM<{ZaG*wVcCjNAxl>TBGwW6xMrS;Qr`TgfZDG|9nY~ zw5wpFwNd`~Kx-HIa}_58a{Ri})K+rY=SjAlPRY`w59W7*KVy9jclLzOvOQot3BwWk zLt{JjRemtKsF{_cJSv?POS-|>CT=i#yCZls7JFRUN=y50$yzS0?KyQ9Zh1Wg+i0Ra z8DIEJR;+1W)1MxsCga?HtI2pyjo4OgkDXxa7gBT3hwt2Y^nUg=Esq%GN0@akqh0J1 z3IF+fG8;cXs{CQmYqxow`u$*JR%2w9^nxjP-uES zVRUJDa!y%jyYDK+_8VRCx8dEf?y2Gya^14=NmZ*$Rw< z1iol}u8iRsANac9+uHb))U!6g9->_a>ZH7*c!zzw@=wX@o72C0DEvQZqa=SiQ~_n3d&pX%CN>L6KKx zPj(p(21wv~Lq=ij6oo0VrE#qqF$0BR-F%6?{BqYDQjBZW{JA_F!Ot6m2eC*IVcZ>D z)eWKKj&_r^Aw8-yCRWz%ea!*u7W5EsD@=~17-=PF#Buad9TPTg4( z+Q283%&O+MR(GxqRTHpjiQpvMaUip1OjdC3`R&*EN-oIM7LUvd?zsT8U0`*IG&I)1 zdPk+nl#NF>@=`XC{cE|wr(a4W;r97i!@7ls^$L&7=XGRXTG##Kani8Cj#~a)sG2b% zU&Gbwh(hB%?LD_Kd$7c=k=Pn()NCCrhkt6e_4D*up|@Xah2?qr;LqzILo~(2K^8pWRk z8=SsCWN4%NlH!%xgVPWMmdc1S3$mnj+_O%LVNH{Dx>Dv_k;m8-Ev{z)ENIzDPl-V^ zceq~>=@k>yD3o9sy)#;UE?nFhlTx4uC0^s^(Ov_h>8#cx#U;@Lb?FEeZ($r^@`fu) zMnbVCH_1p>PEruuMn12Uj_i7?vWj?9M$Eu? zFlW4nisj@2=5bmJ8HJ&wqF~$^7}+gPWw%f8yc;+_G^t^OCndstvJK8 zB+J;7e9tjHir3&V>NXmlxusTTQ24a$N0U6E@VT@f#f)K2#^0`uMF z-5%DRYq*cW8jl|_IT(+1di(dRFl#)%4>XL&_hp#2KdfR>eO^5*QY#-o+ZOpeDx zdVBc9PR8RJz2+-g)UB}8Fr|8Jwc#nuDK+-Hu+R^_mFX_pr_Gz=nG=@?9sU`u zFAe+OrXTvr()jx56K~m=ydL~AXDv*^LNMC@kKAn9uRq8OeeCN)PfSu%eBcH;d64Ls zA2NIkI~i*@#Z>fu#ZI^LQ#ANeO#_8eMZQ$=(`d0(h01GbG?Mk?r|PLbyX|^%TdC(E zN*-8^XU$7GXb;yo>yam+=opIy8=YF{2|6>J86KIX)hju8ua?`{F-An;8*27y*JU5M zx)5Yc%h6U#^m^pFu9kqO-LRhc?%Ro%z~6|l=hAS$zM_*WGRqmgb){&uK9hSzjrmIG z6G41$^!tKB$Iw+-7dXty2C*I5A(s>GihfOU)%aNUQs{&%sj7_}^BU5)>*h=0@{d=M zF6Ccz*$XmARne2{9G5%HL8MKtKZW0q8Ldt_UM?8!6s;0~>Vywa_`RbguyfR}0*8&Z zL$9+!e`SW4Rcz}|wNe2? zefVe)H#qt$^^J?;;n#V>w{p60+UNxH5_o#`V~mEUT}Rgn$?mK^hn2*#6~Twe2z3fX zN2*eWPtwC9OGrKmT0lfMgTWr%be0rxuO2%}T={tXCF*lAC zwq@yKcap90X1#39-|+k>*i!Z^8PmGy<>00qv`pEQD>iM;6|ug-gPH!`x-iA?@@mpX zpF#Z; z)_mJdsT0j&*2U@gx8PIsWp;@*=L@QZzzi!PJ(MpouTLP<*2n4LdDRkEG+!PvcCIW$ z-&!=P(APoxL$$WJI>N}2F;Zgb6V(1o3X15f?+Q&_u}nasfh;?tFZPvHtEIzjA8iMe zqQ6Bgt(3M*gJFmZ8(ZHmu}T)oHPM_v(aqZ@&1yH%ylVMr=oC|tN}nO^ccsB6r9@A( z;gb&=zAnJm5`dIGD4|c-FWO($bTVg^i@p2$DztWqZg`VHQdioyghH9l2cmtb#cdGa z1-?OQP0Q-B8GOUEH;V^E9r=PCPv4TE3$hAW(8X7Hi*{9PYeo?g__pwoPc;)w&pR#g zVe^yOxmJG{0T}(AD{!Uy`*cF>{#NOO%Ri9>{thHT`_xUHI};5%y5m;#;X)4@gR{Fa z9B1duI+MG!$UN}lg;#`&FOSx}L5(cM%ZFpxGAqX&tjp7jR@}EO`XUjo;H+F4d)chQ zM5YuW_-IkS=<7h8pBQL*<@`Ti?;za z(|@L3hIFiNzgIh_hL644*{t09t=p?jKx!D@{mfD}L?!W%j%y^%YU4Pgi+W}kLL_Z>%uIQD7RZ$Q`}`}pps4=;4YZk3$tI*_xLiAlc<9?`MxOF z6zec>b*!DMU={ukjQXT{uZg^r^dG?({E&?TxAA>6LqP$l*%3W(x{TN_~ka|OVphK#^-8en)Xa zQsa>L_inPWl9-bIT8+?54>A$FRF8CT z_$Nv_G=`UnYSI0XZq(=pHtCwD-V?^6CHOUlC6}J1iil6^7oV0NpOzQhc`9Y0yhEZW zgxAgLLYg5~HSZA>d~G|mu(kMm{)W|#7rcmV*n=6qaa_!*g@Qx`?;Y(7PebpR-JPr+ ztrTu^X`>kJ-axrfxcxpUH%@O1kxOr|lKqin!Pl0M-{I>S zet99!@ULYbgCy5mN$yoiWCz3H8x{^e$5ZgxNAP(Dh5H8p!6GY*UAaycxxe<(p^56w zvdTJ-h~;9_nMTphB`h^Ol|Is@=NIeYaXC7AI!|~+o+msiKRCM-z_R~QEc)o~7g8pO zU1uXFhP@QB(ADv2I%6fevbQx#!oy0MV8Bl@g@Fkwef0OFOMx`e{3G8I-^-PL1uFQ8ARIA!)dv`WVif0a|;cU28YsRB=XKaF7 zszP5ues=I{Q>|}WVV)lGIE$r3DdoOp3c{^cQ?uQ-Ru|Jwwn2vHS?$cHhPwxgDG%6P z`odq;zq57Pl*Dd^G>9(}IESP6&$^m6RjV@Gi5!2Wb$R#owp&-TGmB2hMViJQKI>|$ zX?Y+InzVXG34nFFua^ZF%8E?g*+T?xNooO=6TYF8Q7Nfsjh58fgY&=v)-9GXq&*f= z&?d*i`i3-M+o=*Go;hsYQ#IwxtcpFYM$$%o*|Bmnhk?h+4JZP|1NX@4NBUu_zzsZZ z=ZBcpSkPl2Tfl%IZTQ+;(H5VhnzdP8W2dL+@YGDN99N2Yi?&v93hw>H zdQ30x6=td8u3N!nA1v+;b#!S@)M^j<_;M*3)0`p^(h~8KBrS0*;bdkX&%-PrOAt;nJVP!n(nDG!Pt3b5bP)7WN(B?C-hA-RuN+=yCZw9{UEwa-ATHuz!tiyMaIylri>8_$v*I z-6>Z}9r!RE5K01&y(y~KgsP59P*uvtL}b>Y^sK^4*f3<90D`^>f=*QiKZSqLx&Lm| z_>})c=&LxK5~|}{Wt9IW-UL7bdAV*!xzuAR-*@r7!)y(}%D0nw4=| zB9_ys`#jP~sBJ`yICLUgZThl_JNnGJ?5_6bSyj2G)c#u3Dyn})*67J7aYz2uQJ~bF zAL`D}*txrVnmckuTwf+MTnM>6u*p=wj?r$b{KgzodZyG!dG5&d8T6H|xlz|2&d`^2 zv{{0c^NL96@zhxhnyK?(JKed?U9idPtZ~c#J={s;HrD93zKg}FYmmNd+zXCt<-d&K zNNI;bBIMVYlCz^8>4k*v$>F$7st4ikJ6Y%0gWbKp(d}GyMI`GL<_6MVR*4KD^E=vyIE}{P^R@eD-30Rh32(H(J zg~WONdS6b)7i`3A$F;vYQ>#=27P9j|o;0gqmG;0cTA()RO|foN`Xm`3%f7ks zVEyauZY`27Od?kkc&5}Ylu5$S0mD;j{~_p5^bK9iYVAQBl!CBh%xs}42R7JfNfT*0 zYmwK&bzA)Lh)3D=qZgj(Ly+vT>Fxc7TE&2fL;GJW?_Mn(U znfU@;X!Yza*cuD`!5SFfsC0&!w*D9U1lHfO_zo_&mP4hka44}JI#HHb7r5)nlvfw5 z5GT2vWjV2v(n50Z9yp09;N*tBGR}{bO#c$?#yd)W2d0_ z?jNi<gWx3LjS2>JHL)5C* z=XHlevVsL)vgvV0*$nyXb;#dqa^>&D{K?t}8&%wOys2&ciTNtkEqt%xZMIiZ&My0J z&^ge8LiMFqxe^e7N%|9Ru$YH8{D!P+o8UOoUmRRQh;N>3{bS~(%?eALie&wpd`yIO z?#!}WX*3o?aEAuHU@yASSv^EEe;V_%oe#^3_3|=vP>k&`2?fJgW~`rG$Z-Zq(UB1U z>Cm~x*h$3s?JPncVt0?VZ?;4E+^q~$NoQmd4^D1?WG2U;W>w94R-P|yn$aW zHj~I{hyKBc(jGWS9efB|@AwbZkg)$pq%`6<9Y;b{>fBH5jG4slE=U2r6D6%anAJL}w2%5v3*lid_= zKlhYt@~lmYTKBDG`NfP%PvmuH;6*uS^F}q`Ga;iqP;zLMVvNqr)GGT@IIl7@DTIdetLV*ys{S*sP*`LgoY__AE#vcU&7ddfeS?TT7X^oUW#GM;vg9_J1*Lx~>X zfDUkk@!VQA7#n_eaLcd)oLM3p4B63*&#=*f6;<@SS7gVdtVD{NMlrF=(%OU@+QGP( z9qpO2RR$c_2s2P(m{esC-jN!k*)lfGtGP%L(;Khzh}U>V8bvvu@Q@+Kt1t-p$3#xh zRzel|B(#}UHeGwwOn>DTS$$l=RqsAoUxo;e*q^3Jk%`ZYmzkh*@)<7qSPiU0dw50u zT6bNIgnKab(iX3K;PE2vRdtt znw(AUIY$)v{e5lz8f`I*{asJ_o#(igcLEybsP>@Xlc0XCJ%s;%8Be8Jz2u=Eio|BF>)>`E8P&Oq)#>5jHhcO^>mSp}N`Q{8%`FHB^_#^w5jeR$za|Ky8H&kW2W$ z3$YiI@^ce?w%D(fhHoBR8omSb|5vL4J)FL?pXV-L=`Mdq93f2EV{uJ%7h7T%$?iTL ztEbT|2coM#6KYwfmlx`p))o&`wUT@C#Oh=MXC&3ZOxYB_Lj|fdsZ&UG!FALty})25zBzuJ>|O;)X_cIA$bf{ zd#Q0RHI{MR~U+TFa?V*^c`KCq&gE%1{Tb4As2k#$IxNo}%&gZrLbgM?+7jJ?j#h z0ve_bP9ddEZD9#|>TGkUx?#E`Q?>)v{=~IoD2%)8SllKG97KV#7aa}1NXeKUxWes# zxOurUqOO`GD zg!Lc(_jOtM8j;cJ@yK;NtRtLQxzVQ~IRNj8{PN;>^qG)w`jyQb@pFnNSGq!Zz?GA5 zp74dQH9p2QfQ}M4mz*!Lj_97m@;+QTueh|&L6qoeCsZ77O3LW6#`B)2 zf2`(IiB$+rb!IwPkDZuSLb^S^mH!^{yNf>M99w+4%FnSecfqIH0x>*AW~%pcSj-!l z*LDTcgzqX(RYj**cG=X8($nhwTW#wXZ)aD{+e9KbK178lY^ zhwXyY_CV@hE@3i8LE4>yG-HX-!swOOD50E(e@HorYzN3jO%~BDDWN3zxcuc&BK$|5 z3iCYk?C*U0*-t$U&aBs!=%Sj|>&k?}0NcbR$g7@$&+!G<4Xiw;MIIx(uIy=vwoWG) zWee)c0`fiZW3fRG-&AiZzjo!NO!J7iFY)xnN~5?hx~Sx}0@0fkPP6*D%ZasJF?=nh ztSYVF4YR(q==a!F#s4aEq7$jcN-EoF3CGxFpoy$ic`arr9wXm$@Js>(9A4wgfgjhY z>jI=y8$=s&0TN5#$BcSkEqr6*L)d+)cpILJn+r3QQ{@OUZ89 z{e8MZ2(-mo;Ltf0C(FH&^Z!geTuksTUT~+aHbvMJ{eR%lC~dw-5P?Gjw7KHMkULbT zJ}>uo1{d+=joiW61};HJ+@dOmtP+sCgjIZ7NI+)dZt9tK0JpK8XWiZ%ICQT67m`M< zg`GM{3w2^_$#=Uz&3gim*Ho9lDtPj_6CCsb_|)^w-n=zwZ{X0?z7Byyqy0V1zh_v5 zBre6CcNNl!!0T?iZ;ju|e97vI2}EhZo@Cz{o^^6jgtox5ZZ{n~_6a)pl;>OPU^9Y5 zNlW~i)h4SAMyyBR(D~Em+F|PghcdOGoEfzmDmT-z_>TK;kniKHhHF6~Rk3@>s0GWC zY2}jd3~l}(2?)$S?p!TYV8`W9tv2^$zWmdroc4)watJcT3ryh91=CKjtDu+;TJRg7 zjh(24zT{~|Y;BZcLLW##V0I2y!pa)eDo@IPjW21-`4ZG2(evEa8IN5=`C4#}-NjUI z)nO24&Lva}&9aNK@?~lBZ?gkBs>IylJHZay%u_g zSMv;nSS@sdT~Pag-J%Q$2+Zz4iw?k11pJN)VmoTg9>hS!S(y z3jnCORK-*R$HD*5S8^dX_gjdDHNHv-$kF0wWpIi)H%7glf(B*Y*BCwT$a$n5>6FvO zy77le^mf%S)ZqK@2GakU=Zr`0Bg7^jP3BASSbujtaupe`S%*Jql29+CbG;k@UCRuL zj9wRL=rHvhbnrqCBsfS4++X*=4fgR;p*YYUjq}r*KtubA&qR}e7dmwaA=U#XqaWB@ zd@f5#_On!4V#)axB_PFac~jOY(SLWQQjQaAZ*~pVz8-AoUeO2nmxH4h{zPKRyFH3- zA^wFPzGk6r49zuPA=5FYaqXklG)|J}utI_%_q|jlyyRrpGmEcN>-&~un&ac6gEOCY z_=@d%^J68}8-~4hP+sg@`>kK>bV&SL0EQX^{R9lj7@ZsIVn^p7Vj&;UctL|JcwgUK zMrb|Qu5yCZ&@_goDVtG{R_S*w80CYLw;8UgaT$RIk2XJp?g%t+_4bM^c{xv;w}nwd zl1!3hsw96wx>8A=R7setuUkp7NRp+JR3?(lBne}1p}MlWm~|aVvbpRTsEEPwlXczV52N1eAT^Q+RAwsvJ#fp}WGLVD zlt`*g$MMaFWE>A;IF_xe8tIH&C4&z}9)LK44%oTqK!N(P((ueh;fX7`ct@!M1Bd$i zPK1xhh%947=8zRdsf@@^P@|fKg3Pw*{;wYX0Rv{~TMU@9fV?%n{)WuE=<~lmO=Juz z6!azlO-d!qyaRiD7Ij7wF-cfoSLY*V&ce9D!$k;)T)8Jibq7_Wu0c})l5KP-8e*cHQDtA1>v`ch~E6)8AYki&-KeSu@{ zKUKhLQv|X=1LN&a1ejsy11R+RPP1@1#=>RDO02U}6vu7yzfGS61Zx@rDx>PE42BJJ zOPfF53eMDvHfh1P(FP^ZP@)P@XxJ8LP^J1_GzSnW1Gw@Js?A`hmxSEy94n30LS6VW z4>At|4c>~gv{0i=kX{PJMz60gy+n6eAXbXBWPVBlDKPYbq#Qx1dK`7ndc{;lc!K6t zTnvqDr^w=g1a>?!J;K*4NzRKeE!Y*tJkvM8#bQ}xgCLHp=%J?CGvrnL8tQB=P%w^9 zd~2bxQvVgwDv{N`VSFXYC8FA=@{K43aou1=wO4Y-TYUIz+kPHnyE1|mxU8>P4xAUE_ z_v!YL8Q@FVLqJ$L(#zqyMb;XGLLH@A88^1w^cbA{8EehggqlC~2chO%50NI8l%ZjP zoJ4=M52`NC(4Z5FF2G+L(XFr$k+W3@-QkG7r$SJ=H;++F!wD8k@OiPi)vf<__S?n4( zUj~VYl*>$z#bo*_v$ zz|8DsaS%R>0H zjlO3<Z!EN1ZnTBYvb|I$Nt~xVdY9R+Ho~ohaBE}QuM2h^>XFG(+>Zi zp>hkO?-3^j`~MRACwW^GXr4l0(kO+s(|~T_i`@G0TH3E@U(;`i%Wox2!iO~r_uAiu zJQMb{34N^i8%ntYJOihHmOLp#=Qp$(dmO~xrv3m~zKTCU9&P#qWUJct2iO&q<&#AM1tr)jaf~pgd-s=&BoDN?HIyE8@|Nj4B{q`t zY2jgo?n_1#&i)j|o!i)wi1nX`xr$2XKZDb$I-W%_JK|9oeSX(@;zX#6?038Rj~J|l zA`~qy=-iLh_+%xYsK>Wj+I-Ni|{U+^Zj zH)YB~N1Lo2Rt7okRG6~Y8I_v|9In2-%2sC_Ry>E5tq$i2!exc-{v!&R#D(EMh{o$Lj= zZ(X?(w`A^2g8vbXJ2}vMuB7#H(i4v4}B`TFbq8XWyi6)8yidB?~ zQfs{+%m50=gqbm%j7O;z#a1n9`^sl+i>-u6MH4_KpmOno)Ef~M<~X+Er6B}lzTevC z%muXl-uM0gzyI_6pXcRaa`t_%z4zK{uf6u#Ypa}D$KFStdD~AiVLxO--gO(fTPCj* zQJ{~Ddmh0DjG=rdr&nLS!E8b=H1bD4v0!B*{3ISUm;}5Rkw`-l>%HcA4F|}<6^H4OfG}|zKR_o-JhI1OUdS%vFC*#GR%UG|>8tX6P2Td94 zy$}h(*(|D)+0EPc4XyiL>N?z^cw#-24*mbof+>zbFFrRqEK6asZ41RFt-hJ|3VuCC z`LU45ktrUR9GS{L(t%YE?SMfF-80S^_z`!f9D(7rp$i;=Q@Ji(;0O%iQ|t%~Nxs;qW)%bYOC|}6 zXS=81F1Fn_<1Vq?({Y#D?m4)JS?*|1O49x`b~v3Nz?i>gD*gNM8of@9*Y~<(i~=hQ z%oNzEX4uUNNuBcV@b+i*%2F#{5-iI&muH+SGR_v;nd%O1|7G`x@@6_kc{BZ@yqT_1 z-c0X^H>-nCF1PyVU*ll$c5pCy(Kz%ady6XO`3e(9CVI$izW*LZ8tT9^t*K*Qc(*W8 ztsJr*%Ddnq_|v}$R*ya!f)Y4CegkV!ypTUWJ#RQ+oG{$U)+|2!A2M^RhpM3d_p`aE z=u}&@_}P0-c5KKy(Dz9PvZCsH(F1)MwIj#s<(EU5;9pT@+7W-et4y-bCKg2!m8d^a z>3HK{nIrDsMIBL?-0Gi8DTgJvl>|iGED<89T`l}^I{W!n@mHlQmkmTZw$zICrDF@S zV{@$7N{N+C=<4F^*iZMVdQVH|EzOSIV8srUSjo1!COdYy6|1F777CPxs>zCVW?}(4 z9eb-4`^^iKth&=tniYGg75ix>mWtDPhg-4lNUZ8B2Mtcg_O)WyORQ>dFdOD?J5_s| zGbICbI`4KX_8Ey)?LBN1TCCV#rDGjboX-0zE7nNYi{vX4JI{(;Ah8??I#wSxg4bEG zGbOg4#L|(Oyfs$rEfOn8v-+^UI?0N?A)WWIl3iBp)e2|~7oK|xkXNr0_a?$O z~Q(u9Vy=pmbIkp-n99tVD%DdnLS<;=rVfrjy>vgw)!xP z6A6yx=|xr#F;Go7MIZI}=vdeCnm}Pv3*^PC=dw|W<=v7>7R&o-${DS`+0HRAe$hz! zJ6e4e0r8$zma%ra`0Y}o40^_%h}?gkFrLa%7O;@|4i)R(iIS9F1~^{fME;IKWcWQ| z*rbVC5Nhk8uHxClYNxtTrtZL2aCB}-;^dT?&{wRiIRWg(eH8zU>5%wXqT`Fy=6UX< z_yQbta?PL8%LT)txpJA|!Mf<2Vlgsuh2jhS+@-L3p7-CRM@o~I74VEtG+z?SW0~?V ze$w4+_hLxK1-N8S^0_d(OmA{B>jcHXx>@xFLgk(qI0LDLI$Nmxanb~>1BuH<={vcl`JKfPtx>` z*Gs9ka#(Ck0i&ErXP!#r0@}g$|NrplZy-MgGH#bNSoS8*v-pqO`u@<*%3 zQ-#k6EQ_x_hdB{iKV|YdtSTD)%jYd&8bV|x$n5|036?&Wj2G-$2f1tYZY+J4YvoF= zqm>(S+NYJPS3h$gL6D1;=cd=d0Xm3}b zkR_sn;K}RackDQe7G(4%ZF{RX%eK;u+2CkjY(9#Z4O%ny3n34aw=#XazNziOdA*W7 z1H3%r@1-PVh#nyhVakQ7_23qzLJ6_dCnhG3PNfUZJNi&hpK(Rf{~jv$K(-_QNe<{f zQ;JS5hRqlC6<=zceq!C|GhQW13w=pJK4V@%iPA>f75~}$g3o!&h^*6Z29f7)jbAhC zBrzIq2^c|<2Z?0IDZ>jz3*ckdS)wpTsiJ`zjD(kw@Ggr*{B)^6%UPq~P0YKPzk)t# z#EPFJ=&mbOE6`?<#PeNhf0x-|*^Al-tTDV?3hnM2Nj1mS~ zB@|E|tLT7bCpb(I4^r0AQWiN#)Z;FhBB~k^ef=8}eJ9M3(SPqV833@O(!ayo;pUG2G}W8zqLYQ{y?$nj>SfmZ|2y>U&u{(r`dbVEZ;yLW zMWC~9vkN(*vmboxEQ|mT_Ba%M3s(O#mpR5RdLZ2xU-yA@OWx;%!B3t>PsTt0h#>3^ zsi6Kob|R@=^cU~SE_x*qPGK^?M=vLdyiNb77+R0!?R+!Uq^o`@8)rP_2(~!XA{9PP!a~*ia)3??*Wj~gr_%J4=PRbj?Z{K!6G7Zfi|X|+Fq7*u z=9KzEd%EI(o(}oY*ICyNIGo0l%d#wUisV0MyFRyst5IUxv10pK*z)w8#>*CBP4T8h zXv{2Y=|O$0iNZKtEgaA*e>;o#e`MEj>3^yY^~S^-?_}!uC*`kjzbqAaut-~H%x{g4 zp(DZAR#x78HeI#R`^rj)hfV+dX`T)eO%Q+(I(bDr|LT(+iE(u3Mf40brg59}YoTv6 zXM&O0^c^Xo5OVJ(w0=^CQYJgn5y}2NC9l5D984|op;w-)s+?q1*&tQ2rAk$qAAe{P zRp!ONn`ot*Vx_zB2+;E5w_54mvD4jbrMpPd$(G)3LVnz1rTYWvSgsd?Z>KsHzV%Wc z?=nJ4amG}*>_Ru>4aP5%HHl`2(s=dRP5d1Ecqg;K|_1tz2SxAI9bpYa=tOC9>U_|N$O#cywVSSnnszo)mw z2VBoqQW_JL9Qr!24DvJ?4n&3CN2p+3bj%#AX6uv5nAZ>C3Rmek+s!-Ha&pMMhe7A{ z=%pa4U_K>APGA+1NwS{8>h*t`qO2 zb_A<;e78(34oRqF{6F|Z=ekoX&dr$+T!71W;#-$+p`5$l$1vN$Xy0#({T zoC{Dqqh;+R5D1BQkbF%l-^3m96Zb+3;Ma}@cZ1cl2zJcr760`WJm=I0BmV=`O}h9c zcL`a~MIkQENwMs3v2CaB_N3Rd@#D}GDhQ0RH;B=i;tYz&Wpo0lC-AK=dMERzx{#XU z4_&CHAXe;TOTkHuY!#EGYCj{J#uWc9_+g#rw9tRh=Yiv9wKr$Ws;q z&-bji+WZIB5YzC^RPgfJEgk#QG{6&W;RN<3V)2jR9OSB&yvQN=!pjIXrQ+aWoml+$ zrKb>!(u<68bWUmf?(0R_RFW?!j@SRp^29yj;GJ%PG2P@0JW@S-$OH29M_Xv43+p6- zJOzKKtFQlh-W40>@MCvS$yc}pJqbuK67~|M5m)T+%X@LE1LO%(3j1Lh%gZ;XkpQHV z^34SEM@e=5{P$#11R7m^QMaVr7mGak4(;hSEhJY&tg5weBksEBbi_NI{u^q=bgGDV zE>cy?%Y*;2>M>Mp54mVU$U8`hYD=2KX%3Q{G^*MHA#1Oq#63TpAk~7ad5V!1Op5R2 z9Y<4yJDKU1zJCW?H>mlkP;(H<4G5w9!%~LLE3YqR6POYZhUOMH7-qYNHnPu==H}br z$LIVs-HXzcO6ft#5_sc#7^mjP_;H~Hr#l0eQ-5&5q{6^tjJ?+ctEY4=LwF)G)XQ+i zpL$PZs6GkgAB%5s^b)3M-r0ocz0c+EzBYL`!k@!i5|(61i59Hgy$Ucl9|K7Xts7@W zL+DgLjW3I`(uipAgzWN{jr0)<-p6GHC^u8gjLW;MXGWo_L>j zSl;N!(A?7<{+Yq~dql+^eP@J9@D0}pXC12kU;CCpwkO7ab(ze~ykFym5qcdUUY?`? ziB)Wjzj5MFN1{T>y~`w9w0fqbV{`__FCQYDPxTE1#QRT^F3!6`%9PAT-gqj*fGX$1 zFvwh_E@i=M3$^E9nH}mS7gCiGZ1%fCu;T0c!$0of+D#z8qSaIa9RuU_MgX2A8Q(tW zWMSqaLqL{HCt?94UNnGwf65?`>Mya^+!;RujzOmV9N~4MBkl$^8UEG2lO19W)fjQ< zQn*g(bO|00hsz7QF2buMoIQ*RA8mzu2rrj#*(pf+ArcU!`MMm-A1lcc~F9PeFgVGz-M_XlwDO-w^;{Qq?GJr1%_(-nzUvx5e zY%eQTLq`A|5q_9k1HX{6re5Ysl~4E#3BSt<_o$(>(qAv(KT&mGR-lH&3cr+a8HU1m zKZZAP6!saB5%00!f1V)GAxM?a=8&{n_*jrK{wY0go`4I~kDtCQ-C+Xy;ZMqae|%Wq z;HQc=c)xU76MSYRqX6dCK!KVrvnF@oyhYwGgVj^Ng;`pZHoI|S_Rjkk~ zHJ|)_f!|!=OuR00$_0PaDujj!^`-P-X^6!LF(cd5G z=vei+-z>Awug<|0zvvw>E0%Y>gz_&~U8LfL_8$0}_>+l`<$a4&{`o@lSAeXd=H`of zJ0NDqkR0a@oVk{BE6%;7C$t^shnBMy=O)X!0*Ly+cR{EN9+A zLSlJA{ua>j(DW$saLy?uebl=QXN%=rOi4>A=}GbGc@OfDxg(12g?Ob`EMs@*C}Mw=!7yw6h=2C_ zSr(%;S=sw%CotKZdQ@pje*Ln5HrZ?_EOn&TU-(*R{I$XAZ@yZ_DluM+Q5z!`oVCO{ zxQ!20Eb=)A#s4=?IMfvn%1s`5x5+(jMi(f$Y||J7AKCDAZ!xkwWNZqCoaCH#+&JG z3*Qxf59tdwA7QTtDhn8Sb6!r18Drk%ad6Vpbc#E8@R?b|tW8_A_e7P%mY6-pBF@Ym znGuwsExp|>Pa+-A1J5N&G5{?0Xw9WGi_(_Q{IlEelDx6A73w`=k{5vysNW?I$aSMU9*cWDWJzQuo>Q}_8-~<>S zvsuy)uE8{daK zo;XQ9w|`Q;H;Kn+*& z{h#0edwp;;{rN+`iwIBsvg0M}zuW&${hPeYiA(JV#)I_v9^Dyp%eDeKKGx|qd^_F2 z{WV(SdxW^3hhB9}n0>PQc?ee5*x7^J&qJ}gM$PWW-!t8-Pn1M23gPl<7jE+EYrVrZ zxr1vVTis{OKHjS}zvmOC-4PtZen@-z{h9e3BIjZ^n?xTf=7p36YW{b#W<;N0{#X4~ zzsuz|?s}8klBdibT%$F^OAnH((!QxxfAu+cCildgCs3$*)f!+=3{=FNgCyW1{=}Sv z#rc+Umh#vAq6)}ohSFXLo70zUbsKZKDgPEORzlRRBz8@QvTM?si$h$$j5Lr+Yo0C| zpgG(Y_8H@Hq61gyR~Lj1z^SYxHhS$Umwt7T^8e2A7wA_PEB_M9U!-5%Px&L3zgWMz zMEL{a_pj=w-#IXJi1Kd2Pi;B+odsHRO|I@np0(9n3t8sW%Gp#*JJ!lk{ZoVlyIZw| zkK*WDTWXy+xI-O--EAE`wB~V6xy2pYb%DEZt2u)-?iZz>JbGar7FRq?LZ!PzHpghT z&KT_OY^8{2NDGcNNK zZ17)fT(tnst@d4gd)uLW-&A@}kOj14S`+5ont6jv(hvoj>bZ2Py1#P=~ z6mF+GYjWr{x@oVKgRxk)*P!=Pay|8b8=JF zy3{E=B8(y#%T;2w8#=uSEsWx1(}3XGCxYF*w8q~9k=Fe6>T{4juzY+yvyiz+WsXFz z)sj(#-RVol%mxDW%Rz^6PC7+~)%-IFJJ$l`iU+pZ!{AqNN3bFv$m zn`xxWyn*bp{&p2>OXMN0K}-y=>{^1gRaZINb`@)zDmo)?)@ToH(C@@vEn0HjtQgvp+qS19-T!^l{m;M@?j$@nYg}BZ4$3qC#4^*lmO>t|;Linqim~DE zn+<t*0_nexiyRy4EFVoFEV4gh4>1_;#@^MDs=FFXW|6lq| z{x7DN@^Aic@yWf`r(HQUd% zx-W6e37nwzC)%p9PMcYUFDT2eh3z2LzuO!B^seh$P87D~!*7x{yKvr0;Qn{M;R^=$_t6?3Vv~xvnytyVBusB)kn=1LwUhxWMTla7 z*+le<4hI&S70imFHNj3*yziPUJG-HN%=!bKETtN%@QBK%xV`j$J5=1)mP@ACc?+opQ` zbphKK9ftxyQc5)@uiy%2{A(V70ZumHT6i4^k*2t#eQGi2##PtQ{z3kuu_%Cvd$dnl zLS2I}{DkP+%~7G@UBQ!~m_)-wDjE%XWC~sFGitam9=RE3tx*Ht;#~w2a47)R>mMh6 zjJ3p2>nDP23on(ix`GPbXxjOrDUP;T-ArU(rOsZ0x8 zJm}{NF$Ka)P(g7=3k-L6s0)_vJG_ilh)q_q!x-Bc>T+od;{+OwJ9a{LrS`w!ZAeBK zyTA+P>ni`a0$!vE?bkS}FlH-0W?ynssJlRGe2(~feZ4p8D{?PdtM6^=%Etz_F-W~f zw~A-n+dA??yM?#;#y9mFdDFni`|AaxW$*2p4xe*?<^vG6mG&k(8j`(BK!*D(;4_Uz zM~47(J(KL&m)PSqekngkR-(TVa73c8$g9i`Q4&g(v<>%RiO`K)CW%_I5_4tvDg<3h* zO$PpME+SDT-ajc5_m!!WHr1z7NS7!|`R-7q3W_U5W-eG_+P*EGD-*RQxF^3xYu=(g z-L8eo1qL^%1*ap&i|-s&>Tjg$?iW_8K{Q#QImfH;;4$LXl)I1MRAe`*ljb2#pBj=@ zrb?K|RHltY!mX=JYm{4M3X8s_xlv_0t5ix{qukdkx7c29NQ!c_77<%4<}w08N%Z$0 zQ4Tf?cS^91k5}hwAeC*ejdC=38k~waSLJbUfpMu~%h5abA}Agf!z>jWs|t9X+uVTL znsS#IMP%+DCNr-nHnG#{-}2W{4o_uKQ)1F#Nq&+_lIVX}c&!RAYI0X@Oq_gJ%vq@% z6grhcqeV@jjX4;op+z2oM=_s+;@OS+R0(is z9Stp!qFfECot$XO^L+&s8$-$KX_>oXlRNaaGw~l*zW&dtd=nPts%OJ;`wx5;@utyx zWs9oxOsmq&3cEO(Q`x08{({j)Tg_G375ImGkE`2rw{}LZn zXyGOaeu`j=O1iZrYt8LUM}YZq)hLJEVDm+StXTzAS7x9Ji>a0rDn6my7AlHa@WjxD zq#z?%hGb=#t&&+#{T%mUgZg9cl&3J|e#S0T)zl+Bo@SLwemmOsOSSL^(oJ2rYhjTJ zC_4^)L;LTr-lhn3;gF6qF8>NOd#zE9uXxvvW|hz^Ej&`_^f)W-X`#;8#*6k9YhOmy zgX~=IMker&CWg`3&6f2TV@49&EyY^nY|=8f*#lR9BiW{&yUOQ0l-$j|9WC->LZaT6 zh|9ZAn&E#WUb$BbuaeCo9#cHe;tB09#!!6dE2N1N9{IdtYhk-7XRoe>RXJLysEZLf zo09ZRp|9`gHSxFFLu*6(Z%0zP!hclw%|P$y{FZt>u4BZsQ;ho7FOG7cxPym;^!-?< z0n3eX-J$Nh*{8Ec{ZhfG)+jkvsDM4U?;i-$P*VaKtTA7gej4{+s5@uo)peCT?jmdd zy6BY!yvbqilg@4H24wo~gOxO^aVD^aT3MC*X^lU{t#9NEKps6eihjXd91xXm+ZL=U zfVym@x#oqEp$pM*KtR5X){0&_z1U!aIturlTd;*_?Xy{wh! z+tCSQP*dw%$?9d|acN_oRx5|2Lu@mnhE%I~Qn}e5vueH6o z;ekhKkxNxMYuRCUmjcjJFVLWsW}BjnpvqZ9yQ7z4{l5Bdx`itrRDPv}k0F8J%7@|+ zS-v0^xUyH_%10I33fs*0Wk>|yJ}17;$XiMQaESiJTLt-0M{C=Y=PTbQ|BXTaYmtn` z&R`YiYZWThw!@RyaZp_wDM>V8@mm#Z3pXYF5~%FSn)jq24_K8BNmaUDHRFg{&q>u< z>F|rePyb>L^RfYxT8TR~-8@xmtYQ=LjU}zachF^b{6!|JFx|@Zs%mkA_`Z?$3t*pH z9pS&-?7&so29GDejIMtPT0OiiaHZL@$hPRl&GO&qeM6&kBy`!DNQh zXXSyNj}Ids$6}?~8x*zC!Ln6uz3dP+n%9wriJU0nkJ{5fm(g;`d+h179&+FukGdZ} zC+pmbxe*NQ#pv?7#GBT0kBLn+o!e`IyPYhDA0^hrA9-4xCA^;D#C_Sf$>ek2 zSik;!<(KlyHx+g-H26_|&+}W&ZyUd3SWiPo^-+$K^57Bo|@p}z?h|~9jabL*q$Nc>K`VcO^S8;#GZ}ETOH4Hg!LtlmV@~-Ft5bh**=7sqM>yvqygR0 zQV5}=bIc7cG+?7+N_@#+4Ln35m-~*`yHRQ#8G@(ESMQli71O_0#dU{Q5qm0A1?u3% zugF~@3z$VJ-r!1L_G>1>j(y4T?Cb@mEPX?P z;z|K({5S>6f>H@V?DbLHxiiOV))3LJ^+i?5(hW!ZlI^@nA{7PlrEChO<@{#K(Yz{s zaf5k>q-M>xr-XrC9c4Oe0^7zxc-PT`cj6#2MF2lxl%HF1s{U;RGB^K zAWLK3Yutd@=Yto|I;I{ANXVxy@aTQBmOkvVm3T1gWDHt*FKojr1IJ)fV(_%c`}d3? z+lAI~3I`*dZE!iQ9%DjH&%{bG8RgN}g+9sg=}UB~zfLa#YP2fhjvxP$k(u3v8 zYuxg+Dt?_6w0P$a)#ihuko=#{Xu~6?ee!Mkwz^66dga@q-*!B_cAU~>|I`D}) z=QqhuMDJ$2JJgMCg217`eN@`2HRtMUgS)!K{;fI!syF63FES={Y^|-_H**2;`Kfp@ zZW*{!03?3vRsc*)C3VsoE0SxWUIJZ{<~H10tGHc{QN>0P6IHaT*do|@#J%UajqAkT zu-140e%NpYd2j)t@kLv!Uw{4eq8V?SJxNFDUhc9{M5=ot!bi9px`i@m3;%&9=6r-E zn4c);PsRCX*ohQ4om%J=q)YCm6D;$_T4M=bMkNO&s9NJX?jSN|F2X?0UT))R3#KQi ze2g(L=ruf7V~Kl%yP->n(Tq1@&Yw{QaGCyeg|*4o>h!^;a5L`J6NwfxgFRwS-Aakn zod%d5(yJb?68@haH^%+OV~pzvb|2@_#%y&P7j_^wRNb{uPN!qe<NW@@zql?}qr9GpV4KIu2 zQ4L538+0%Fu8ZE4oqAJ#)frlNEzT-1bG-zqq~7w)l#}CD_d1jSg-%FAGlb!gYAnR> zuaIls%-&w5el=f-a89r z$5!NQ*l$(zGb?JQlgfM8l}{wB?PFJAo6Hh=iQd*XnQ}3=Hn}C{6uRqPeFuNdGYJcI z^_*9Y*28(SKu;_gy->zUdtf46Q7t$pAj}&Wb3Q2=tNp@JVb~t74eCTmQ3zG1f#^!#UTBYMD`#pp*+N0HMPlg=Dn)y z$ECKpIO!jH#--hNJ05xDj{64<(kZUtsrE}|t@#?+d7OI=!(esQ`F3y)yXte;0#Kk9 zF1G^5BRxI$>{QAaZEx!+u*b|@_>tx6q(5CU^=1n02lvkp+#$kca z_ABDD&3rQ>{mXTxz9OC5UeJm-9{11>04)^z^P3u|R zc5Lri2H+}cC0w#AR8*iYL&aj`ym3wKFJ3&`3d>+L?*9$DuJBXV^B zio5hfo(^H$6ijNhV$SA>0^@KCCaF2F*oNv8TJ^&uOHnFL=Acx$La81BRN5iL>S3JO z#L8(CE0JHwF#erfBu(^;IiJT_#|)6k1q~4CLFe1E=Q^1b1}>D} zbHt!%YKfNn+lspI-cu+?Je_T15_03wvCzbJrrNOs^j3$HG3OtMP;v^ONc56kPY}ZG zL3wbQIaph3To38IV158reY;{+DDGmx@`etJt*pl5(cf&?C55y6snUlLXqC>(0_G=h z{g`fzIiI2M#5I}X$EJ&~PL=%=)dIV08SU?tE$pjZwya+FrV9Tpg+o|q!%Tvt7f3jR z)lRy!qScFjr=-7%ZX{v(;0% zcUH&CPg0m(VYboOm{UkkMXPk1Z1@!dY^GALEEBKdkncD<;QpWC@Ss)s9A5xn!4d#k z22uvKYN6i~&NC({GyIR?wct593!dYSfXAl3w~<&??^X_~m8%j`{f87U@Z6tEfK)%2 zFP)_N;$pVT0*b2tWl~bpn4AlPRl}KTe-yw%>vHQVKhnZaSdqER0u>!F;Vq=$i-@p` zn0czZX-tj~gFtCIV~UGY6P%g)xs@;GyqApT-QchQ1CqRqc*Gq{&JXnSBJ(m{V$Q~# zH%p@DmDA=~%!f($@;!tz3Zuy$bBZT%J6L5GIzv*-B+!Ee*9R_x!E=|lxsz@1(}}YQ zyXTmgQ=${2GI_odlu4x$Bw%9)*7t??i?rS|7}Jx2JI7IS)~Ktn9x6=AGoPc7X^Y3u zsptMDei2gtSAI|ai}e30JiF|N|3%*HG(Y5Cc|^W1j_^yK?D`inAU{;jnym0~Or6Yb zJ#*jCx{uMa=pycG_#WVPLizehh!?9LNGp@XBG0W>$I{%?i7dtmDm!A4)BkD(a{oYX zQjM>}TmgINOVCN-#zV|`BdJoiIN5oZ*XvvAd67H6&Zu5|#iNdWYl$xj6k?jcCe&3k zqskrYA-rEAABP`@lpD=kd4F2WsYNCgL!~*AXjm`cW^MUYVLAR1eOtrF-yE8CY^dX# z!ghZlCACVCFTkKA^(A|OJ#duRHqdel98u-RW=!qq*~4c^TDer2SX8I~u7IZb^v9Qy zUVp1Ck>9}bQ{X6kt3LYEVRG?;HVpk@<|x?Ea9ItDnJ>CVWig7*Bln~i>FHYS_Vv@W z>8&2#SXHWte#7U|*xAkx{TDg|@y@vwmM z_(1;pjL25F0*a{-AC{TyM6t-QwChIOMfB2CaYkhE=PF+@k+Db#fBR8QEaJ!{F0h?I z=Tc6oEunG^#~+K_oJwm%R;W&j1QqaW7O78Uj(lQ~WqhU&P;Ky~a`2Wqq4JLeD>BZO zjI%Z4Y|l8iW}G`R&W?;To^kHAofbm)^p!1CuSKq5VXQMQ;yCE49GVW~@=w&CB3&fl zgyF?YALW8jEV31^{EJ22wp}XK4m@-)8D(e~vr?RO`pRPU`Q0)pM2|R>Z%HdYA@vcd z+*jTOH;qEd3WX?!APVOl!#HOkfPGA`%6Y05c~D~Y$K$G?b-wZgbaVP`*Ox-wb9w%a$8;u*mNfIfo`9L+g!}q2ozH0g@$KX z4#y0a9pcr(9=w1>0Wj)=`|z1s#1)9Ik{^rIEh6C6G@U!rxQL}$Yph2xC981MY>UU=~k&}rPKtI ze}1x+G-u7;#NTo)Qcp^xG(BPD=xAK%W-q~|8!~E%>F%gjXvjQBT!_Af44%7}mN<)G zpKiz~*`W;^9YJREF+}Kwj9VtWMtWLh{XewjcXf|qs0A4M*G1J3YYT_6tR-&I4MCH{ zC%Pd>l6XIjNZGjcgSfQOhBAXo+@-RH=ty8xjdGz`jR|MbCDE1AaIPb{8$J_)6gWwk zOKu)l%b&ol7ES&Wz11Rr%s2SMM1W{&5!q_1Nl_EvRi8D26Dg_{Rg=UQU9yzGxMy;K zLs!Hd_9Y?=h*hmkE~6@I;$Fe`}Sv|%>{V$ z9p>GPxCO>z0*3rC{fa;w4sg%J`BobsH4f;fYDCXOxz!2Mu*4wCEeR4w9ob-+W-S6w z`3`sISQP6FpNsch+EJkP8Q1E0>aiJi$eBT^%1R6Wk#kxO3E)B#Gv54n_dxAcZJ zaI{lKJApu3g<{2hsf!dNRpXb)+U_$R9|z$SWkE0U!PM~kZ&f{ObV;0r9zMM%9nK|8 z)FSDa+UR^stS(o)pN;X5eW#b>f-=Ihb7OSahVQa3kP7Sfnlvs9bxsN9$BP%F0~G>z_&qp?v1XI zd0J;YzF2*hv|9;3RiBlT&}S^MavQ=$0YRN%yiT~g1@Im2@jOet?iPppig6%x2jS!5 z)mPBq(E8!g^wgYcfhKkMs+}T?9B<+29Exa>KV~&atgvNxh3Z=K$GN3N0?fZ4SFz%y z+gO&Rfw&wksv8f{jrJO+tuh=`q^(+#BlT&2LZRw~V%dcV?y=&e&~Fp?Dc5yl!Jrhx zzw}#7ULxul_OV#3@fO$XH-B)o9rKR!UNL4|G!g~^ zx9*)_b+cQaKgnK?g_R`YS_Z6(G`$r66l&)X+&d+zR()JIM%5aR>*lCh<8j?uYdo&n z67x=%`l5=QO(SLwW$mCWao-KN^CVhZ6_H*bED}~;)i-oX8$pKbuxgEm@}$5N8zrt` zWFZK&eSE3lkvvneL>4tZiiyf_SFyjpg4J6Ny-fSJjyv zd+|VcJ!M7i=!CL@$VQL8Mu69i7XE5skqzlfq-)?(<9s~&N}=K&_UOsA+NzcI*lzbZ zc}r-?GE&G3g}Pd*J=&iRx%JJ7K^F$+4atGY=m=D#@#!_UbBjB<89N3D(wSERiM;x) zuZ{0u%CRljNQS$FY%2n8RP}Q2+sRoRhk|0<<5d!Id?z&OajDi5Re-VV3Ybv^^R%|L z1=Dnlq|T*=l~xU$R<4cDBlE?^ywN%KxYX|3d9mRic_kvqA?T*-8CN9VKsIc$nss6+p*0G17od$C$7uEXc>VH5ZkmbZvd zlyS<{PHLISLI5%|`sbHgGdj|GSDrgq|C3Tc6bdM46=bCF`fTq)%X_2c_09{exfQ3w ze{4*ZNi6s!wa7opx*$o?$!%aA8I&I+yZ3!GR>6>=S2BiL>YUHrR;2oXvyf)S`4 zjILYR^-5sHNr7nrJFTsiQAgU3NQ5I;JNGM+Tiq$=1zf!nw&sf>zfmu|u?8=9XkkN!e`DaEIU`%9^Cj|FZX zZ*l8eOi|EG%>d_?3}IHp_=w&wVe4*nX5wgUdT3T^5$m+bpGfQB>8)oIz0trV_r48| z8qTjT2S3%Kept6}Z&eyc{jB0%kmBTz=>YXpV|Qf9-GCw`)3I~P4=W#jCWNwZ=l(w4aPqFg;2N3sjybuIo#hy4iENxRDY`_$-1%Da6?14q?nOcQ@YoGEE7bU!3j%o&2FBB^c{i|P)ZbIto*Jn8pGUGL z%iTTZGq@H%fd1L9`27dJSNMI-OHrxcB_ue=Peblj#&0;kDt_PBk7)R!1Q?ZQXscVE zWSZaZiz02;JAkb|`f!|2bW%;s`!)^&rq#d+6$V9{p=V2;qXd`B-`l>)d|VJa$^~A1 zi@RZu^t2oMTMkE#7WoRUp*A{eoNx8-pSAv}2cmY>Rvy&uZ63wy_qd-q$WA>DzOy=B zEA+DM%cF7D;ly0rFs^X;wtemk?K-F~t(JeSo|IZ5cT$mLw#APc8l*B$VY}{qtk$^K zMYEu=1(KU9PR#qrUdrYkpgM_R8STKEayv-&3fUpo=i(HXrPG~CFpN-4RY*j|n`9n` zUpeH(DYuo?GQG{T6LPHI)C!9>hh!Pyo{|^T>9;MbtK6oA%u4C_HyGx(YNLHBFR#)T zN>H6K1zU_awKt*W@s>WZC8RpT;V(m3WyWApRJjd371UHnm?H`83$=w`lUN;&${|;% z``Wta^moo^+#r@SFKeXYdR@3Og zQa8B9(YdZTa2u*6O3P(>`s%LexS#`~Y6X&9(<2=oHKd~=2qSK4)gJf}MPPJfnJD=5 zN9%K>z5zu|E6r)MUHa?-&SOw2ZjxSY_37SaW-eI-xhm0=K~ctTTib5#p`tBhUoYl{ zbm2bHk`VxSAbuw;2L_kfNbc1}7>tN~6ZEtwdc?wQB2|Ra?3Z zauqk#hP=bu&;xx`28m<$h*-(<=-!tY7Ejdsm=->Y9`@)P8g>U+NE!~w-@uiYhQ*A5 z`u5OfXTu?_lq1xFhC}6i1C{!AvoD!m9s<;%?jc%OW<^7HL>duZ%U>pCDQ153cbf*D z&*ik>Cmd%zs}h%M;S<<0fJa*7791_t608o^Y7~C>XEGkJhV}YKnBns3uY01kaG8(~ zgExnb`nO@R>h*Wyx4p-tgR2Y8f18f;KnT40$Mrgz>Bni|PC3u7;AH(+L6~~|8ybps zG>4(cfz?{7W)P1>laFV`p?;jfyy_AjTQ^Nno}k^J`dKdvcnaUk+)e$;g58(gh23e9KPtp z*1B@cH4}4R4FNK(F3=()lyhF0bBGox$1Sx)CofVBiK;?nKm{@_G~_%hTY0^4W0^Cs z+x$7S-`ZG9`q`%dY{MaIbXrfA(YdmeUe@b`hqU|x zlsi-x%?(^(F93CwH?_|4svcI)W6!Qcd%q0reIL3WzR~krXAaYvFG!uAcNNl^{T?(X zT*Z66ES2i;{2hw=8O5?!5L#he$qC7VQ@Ad|qap^Dr_FWgb8Y%i%!pa^ zLH1@5$p$hA;ksv9sB2hMQAn#D^BS(Ak14RL-n9=B6^BgaT)fTqZ_c^tNTvEVEgn zn}9XAc4x5rB(3pR=Q1+|TCJHO7_pdXk{;ra!aj%pGGqD&p+l3j#w*CpdUkFQ4ZN>a z%5(qXbAFWE&DE){3*gS$K4$Z^L?(g}K1v3wVxtUNb&%UVywd!}x8|`>f>d$2S;gg# zl8Wu(kO%PJTjoCPqLK86i`CFx9eCRo z=`esuXJC+xj#YhP&HLX&&+K(Y3(oFY_B*2&)qKpqbvG3tC< zE4R&h*DNQeeY3_8&O=!}{D$70=BZSq69oo*uw4V*KXAy?>#hQAmAeN#>+$rbWYAXC zy4;ob3lldp->oZ0#hc4>81&^Xe~~pn#|8!MU}7al?dXe!EkYvA6>Q(PE#%{ZwWr+- zOEqeI2L!QUDdUiuWIcp*%$qD!r%r#%Hq*HWtla0r*5f~S3;U~ur_tw(UAtuq(iriv zMDDO7Yl#Hm+iUgrJkk0WzCY_wCRU@k3fVcGc5WF5h}Bx-A}Le>>8Np(aT6R3G(Tb7 z4q{M&P-daJXn&p5pzktE)%Se?xlW%LOfO#1Kx=9N^I|OL%3B=q-@lc$f`#SIVRVUb ztLC?0gw+>?s^@IOfe>bMe<`e_#WPy~ZzsUrR8*G2g$?)_VbH;t0CPHeBG~e0!nEeT z#teCTnlqk0prtyPxfspH^|tQO7W40j;_N|U8!Ys}KN37B37p+o)5GaM-5tGG#yM-` zE8*!C8q9J{)7@CFa$^KmC9=SGW`nQp!#LeUa{splCIDvE{0YJ%6jzqkGYetWg|0VVRP+f+W`b_8|tDm*!3^e z>hDWEVgPdsE2g;$me?ApvDD#?HVZ9h{jEW0aba!c+cRf@)0|M#kp)s!G$Q+w_*ri& ztd1-yA$taKk62R^m5i5U!*Y4~T1vxq8Mxpcb-&oR2^`PUoTz`DAQ%F^5-gma7T!aM zuoLhP_9j3JPofkHPPxUe=!O`m*CH3-wG+!C9r)C|hwKpC^MaxIiyeV}=G$i~|0v~0 zAqTI!Vg5mf`=fj8!5v&rb~!*G1rrKG6c5vyV{gL3}g6j)9)X z1xe&`I27q9NVp`UO|ltYZhW@P4IGEmS2jry_-N#yj(K-u%7tHCyL+5l4N2bx7I723n&_WQ=4DXH#Xp zO=YN;s@&K;^1dw+zv(0x7r$#U(4!Uu`!a)rOUL%UIyW*dIoKG2$ zA21R$m6>d@jasCF#OBe*QAl!~dtb~^3N}Pe04MCJT`en(bhQ?00!oZ(S+ki{svszg zg?T!?Bf}>s6a3^*@W8eH)|!!f18akK=S&W~WWIJf^Rv@j z1E@9VE@|P32$y`L0|43^7h$Jskz8CsQOF#L!zPj$t?$neQ@|)$nRbZGqWJ`4E)q?ElMG`PnM+lL{7U#N^HZYP>^;O;d#AIeU;}E@uqtw*a65fT%>A_$+69KoD?S-Qj~1*?U7)7v>!rw{bK`bwF9LJv^( z1VzkN$ex`PGbd_ky%yw?MG0nTVmouLs0=$S%sTe)=LYw;&N!>Htu!zVOJ^85ll2v& zBlVJw9I}<&O43^W^-$Nfm_Zd~Kb{xDqlHC2Ajk}K{+^+(QvYIJV(~|X0-Fqqb(g>E zIxX@(K7F%!JKe)gkicn}jnY=NQUkORql|4I_b6;rv>*q=VIuBn;nX14e3z0t+eC8E zk&ij9tn@`H{e&`WN8Y1wlggbdxfQgb^)B;Km76;@p^jXPVP)m+n^ha26iQp`%5o2b z#FYg}USb?3tgv8}RYu8SW%NC)j1+Vtg+QufLzkBYT@SSa(1($i7(E%KnZ1-yhZmO! zkU5*)<~#xOs0Ws-UHMz9K^>4!c(8^GV6*Q0&|0k~lL)+TmwuD7qxH)V>DEryrX)=z6G`UW|+ z_H>uF@O1F_!l>tv3({B?)b78v7{pH|PsaJD{x}_uQ-VDHz$%S%SWsr67XG~zlYD^V zJJOr~tDKpJvgHE}INas!?qsV+Z<7w<#7=gVi{=2UHA_sG1{ni1V?M%(R*Rz)(pwLt z9kpy{XnhT>x966y(QRfa@#tWC)#7KqjyaH8W1h?(mMgZ-T1fWsko+bsxc>rwVQ@cN z)Sm*FMQSufjfBiVT;RfGTf|?HpP0X(EUXMby4z4AV%eMtpu$Y#D1Ni&jKStl2+2w^ zZ&FtD%uBo$&zRcFBv;D{BYLun`f0L-scCiw_oKvpTVIBIKPubvI%4 zXI@3L&1$MG%C#UM1hU9C+9;+sw1r|+#{A1El4>H*u6^-*T42dk-lrnj+vWtjt7&}q ziCUzcpo)$7*?+P(ZD?~ihN@0B`}C8}gGZJAu=ZM44JChPj74`V>tK3&xDJmc#M{Ef zay-KG&^UQ)>N|6}!~(tyvNf>9QjEw6xSTVF`eA~@+ZcqZ^D%M-;7VHbeI^5pNiiA7 z!Z>u4DR2azA>yz;i=@5lOJydVM^%k&+N@+GJ6huqvZnT118_sn`jr`X+e`5`N3%IO zw;2RC{4=)74Ib9vH_auq$>MWHU19M#2X|N-zX5cj6?3K?v&)K!{GPsZzmmsavx^?L z5_KYx7B*=OiBePFy~>$klUSuKr2CwL=@b|)XW&#T^Q(5|pvvrh$y#+SUQ2pDNHrV+ z`OmeIFSV0j{sYNXol+NEuEXT@7Q3#zR9!!{Gxz&}%u<(EvV=M1ABMcds&AB?<>Pm) zuDO6aiB`-|J0?bqb?hn)wze!O)X-YBHIlu~7_^HCg}rF42H3VyuuCO-RN+t?#$^BOtYQ-o#t%Opo+sgk9I1Ob z4mm2g_N`#|C0gSb$S084)K2a9%R1+K$z2pLaLNJkD*|lbSyKijcv+4s@tdGlkoZ;b zGN&u?5PwS(_XoAogdQENzt^xSNMe0}0zr2E!I4Ny>I zHU0iN8VxLGPc#{P>b&=L3PqsXvyf@l3LCVf6}AO>)KjtW!g^M;a(hl+&$9?f49~SX zG_)T+K+M=?_9pV4U~r^Yi`*{3$yVtFE-A}1rmzAjo~x*$HMGCbe|u$sy)w6wvNmaH2z7|5I5fnRsZB#p>C0Y3j{>~OW%UhEA zM__c~RC1Uj$ROV>k|MN$8#>&lIRpb>aW0~U>%3>C)_hTFx6zy3M*qZ5MqVkKjUQ{x z*QGWaZ6mh^)(7uluOTb|o95$Ar0LzTA2V=pwr4XCvZMwtfR~i#4&?59D5jR#SVUgI z1`LP!M`C0&4&}@!5A8oAP)7G0%7qbc>nLUrPDl@evc*Gp-a)pkArM7fnR-$CqJ^Ot||NCW~o?6s|p`hf)ygOY0094MkEU!8Z!W}x~3>+l~Gtv64 z%J#ruu=Zer+uTW~^t>bVQTC}#;&hm+Mn7$31_t_D!iT{@R8?bM#1JP0vrc#_I+b=v zJ&SuioYBTX(so|$ql22T^qze%S|JCcr*kmsiOzp4aJqFkif*EDCruBui#_97)%Z;u z6PkS(H%Vyb;gGY}zTFf`B&U<3tUn{*z| z_O#}^#P+c|*wa7KnlHDGC$0P_c9Q=WWI>=R2@;OO6?=cJF|``FHav) z0!m)uqSS$-omU+=+IiK1qn+0RD(kfIa_h9w0*NhaeY;2B%_0?f7~xo`dos7^aF~-> z>*NxCWHx;QkyU20_m+6(gV6?V!L|V7;NCZGlt4-jOBn&(;AObBS5YbP>s%%#SSL$Ei#feu5p{!kw+Jbs|yP+rs753wi=>{0nv;C=9e z^H#PUOQb|LO?1if_{Ce;o+?YJrWlv) zZ_yZ{(0aWyvtu)@Zm%hu*F!d zm^y-luMq-|rcrC}zQ8Qd30j%Lo1puBt3--JgbRWVa$LQ#6pznXB9T7Bkf=JugZ28i z^*qV3=59+I_!T8^DKnH5E2SYw(i+JIQ|yVsxms1B87PG?o~Y$YIc)pc@=1fZ)%pS@ zSdxMCfFKu04+v6$^nh3cEd!Do=)A0fX5up8)L=c{33uePN zdWmS)%p4dTbw*%7@NVa1&hlQS!456_BkDBoJeIkkzX1rR;FV=VYCm`eDfsfYchGFk z&*FrN>D69p08No;aGszw7lihg`_D5j=PGK?89X*LsQ6|Ye>5kx;TE>`_4{x4{*8Gw_A^D=U_hz!+uq2v*P@#D0|>TBuWCY)+ri?ZImlVO?-KYfXR= zaTq+@H^Ilb^Ipt1f_V4P^%O@-NS@2#(365}@qI~eJGfNr@5$djTI6GxKx;H|g1*q2ae`V}_;ilvQ`>3TMe~q}b<&aE zPY)!8ITdi+uh1}u*#hNApEW2EPfE&pm`Z|qA27?&s2tAf6N}7RdMsO-?v1J=LR%hy zJoaUoFX~FIhpbJ5g9k(!KpSDYf(H-?+>To%@|16e&Cj*3bWb2yZSt}G@O|05EtXd@ z{2$yh3uTYLH%FFii`J(0&Igd)*!$dUp|}>h3sK1T1>&;rSwRO?7oWm#hwes>%n4A` zm`+Cv&1Zop$-{CPhXdCF)a>pT_cWz?^O6>R1y6nSKU(>u#anQCq4j;ZP$GlHKjF); z7o9lO9rcuTyGN^y7KZ^q>c(V>4FP$I-P~yj4Fp#R^pqW{TpM`3HtH|qLN?Dn--kh1 zDMzN5I;Bc4GS3`d@LRGO57tLongyi+U_(o=ZzY3Z5ZPaYf>inRfod|Ncm6GUP ztA8tEMC67A&4NQgkYa#P?F*@(ytmxG3x`C4)d}u%-LgOf;?Q{5OF_X&W zJ%}kbJeB!x-)ZiYXfGq0DP|g#KxX?vBhqx`4k`=&JJTTYLLGD+Wd7wspd$4j;;CR{Z+O^H>OHF~^ito_d>{B>+@Y#i= zXcHuT%IcPhKhf;NccM(w=Ccn5ZBY1}pRMcY<$N3CbEdzJCl<8@3 zNgi36Ntiw;spG~F<*H30baSYpoBm!n5#mNf-X}TK9!qS2dC`kiN)*D&OBWq>&coQ$ zo_6U-#rx^@i)w02A$HWvWfzVgIkm|##o8%#41r<`vx2jXnlp%~MSh8(OR7DhK8u)_ z1PEp?W8E&yzku;+0XbGH3pxd9tshXHA0j$L@YFGC<*|Rz73o}o4%#j zB`(q50?`uZAhk)j5D}FK%CHl)k*qSNR`T%M%q%PU@vOP?6~mAj9XJ4v*3C0NV@`L^ z5A;SK()cwVa|V4Q!y-JEO0E=jvc@!hysvtY^>*QRZ<9}i$}AkF>^2pq@TwUKRE%ok zwG^RLfUcZEOKezKHl-eIRXYme+QJh7*&BVio&Lf_EO=T~a{n1ek>4&_ub8IS4d6nMT4-@{o5DY! zk5S`f@lk74N~?G|H95?j_fsQu3WN?d9XN=z+!u|T!)HU{4hv;7h@4K~eaRZ=994|s zMOvlj&FT-Kt_snAAeS}Cteoob7ywi@8wSd;he^(6L}Be7H+v{SL|^1he_!?#oB}9q z?HPsU^Nc^r6~jQt<3t3>{ltbnBCho5sQIc~9{p}1BxzhSSF;%u3U6sxu^iBc2oKw5 zp4U`jnGBnK1}iW&E<$n(TWc<{Y?f$^qB&*sdj)`vdE>WM?wj?V`Kdy{cIys!&v`?v z7if7-v5aG~i`U8uJincjrk=qC`Oxs*;AvAn;8dOBzp$#xe^J#Hfs^Pfjxf|E@_GG( z3!EnhG?9rRda}esT$)O5QQnv2bRaQ6hRrkp#{Cjph$GR%{nGh-zt0x&1mNKc3rR)l ze1|D5tiMCDS|Tp4$k*_U`t4v7+oV1Af@x=7(y?9+G-s} zeoVZDSH(d=KXoP5%h@EIbs3oy)A>hwO^&0&zr!Im$p!$I1l+%n0FQHvDb~lJigToG z(VAg45u}s?n^v+W2>qKDtLfoFD)rbQrOQ10W>!MxH~oRj#BWM&#|QW zjIsGLX;2aDK0i>8w?KKXDp2RxEwZR5s%1IV?tejbfI1UZksPBGq^#QfR^pOvwUt`} zan@oUnr5lq*dn~V9D7B!A&O-CkbblDqf`>-l2L0Op0erp1T`5hRCF&wMK{*aZL$cWPH`)#6tHxjj9hT!72wxV zL6`u9@}9Mx%Ka>8M+LRIHq&5YdZ5S;JU}LQ`F>?u2E_Nai~7Pf5~y}~eS-`EG(io~ zX&3*S)tMDY9d(&Mqi89pqLcY`X5eQu!H1uoER=9gMI3}z;uho@FPy)Zf)n}13(ci6n5tu@QG!DG$v7;C`?D4br!tYlw}1uF zyCPm$o0CF(Ej)vrn>sxd&FCAI7Ad!rs7W-u4wKNbB&3P({Kx#4iM;mW&NjrBqOiQ3 zfv{w@*-90b%7c>dL^=b*%wiaKTl!kT`@Go&N-;>G!hdH3=U^rR0o*ZK<9YbtyzY>L z*^~fIoe1POw1{k58a7zcivWtwUCh}iXV?3-`f{0w))BV;)xN)Rb!wBtkxO?>L@#`w zEY0(-mKmyZ%S_g1CLc_|yv>uCn#ba?DTGHPE za1^ardZDEkTWxD!tO7v=G654n#eh^1s{-C~9IK#jfdFN`-`eM#$s}U?+V}gu=l_46 z@^CWy?6a?Huf6u#Yp=c5QDj_a{6%pi(px3!5=GOwf9F+6y3|{{dIN=&66$~1t2U!n z;<4W6Q_%2jnc()}0{XyV$d?vO?Q1*tc3Ubn<tv>R-pn`yG*+{woLRGkWI`W$BlWWiY`wFh z&kNMtK@M(3-u2}bf>B8FY2I@pUlPzTC*Az#x4_7{HUcBzOOgbEPcCI=D!)v8VC$2f0wUswGCtz}&YfPcFfo99u*TwG5yfI#d zpk<{fhu68@E+wBj_mbO)_yA78)fuxIxsg)7$bM+v^O57- zrqNzD0c(ExDv2z>Io9#iHe$i zcnB?;!ds@h(+gqKMaeB_%#+P&%D)}UZ~e%SXZel0@z^%Ro!qz4SKA&XnbY@7n)mNY zaSa{cm*;)|1>dLTy+6qNfACJ~%vT8uLb-690(B$mPND)?4p_zKAn(7BB%;#g+#9&k zj=sZ9R&Bp?v}0#G&wgJo*_h!Rq3^Pi2PFLkM${OrA#^}$W_8Aw2NbIE6YV27X2 zD`UGIC79vnNZV20BT6+`j;$zRWnL0-(L~g;yr`5NC4@=k5*KhJS&*0Hb~}nqA^a1N zm|(v@!n+l+!vaL>Jv+QYrOQdRtV%mt(ZVJ>`~XSZX7{k8gnqeE2VkLT!@W|Ffc^vf zy*@9=c01~4c~NOQYH?oFAML2$=bBCDlh7KJ4$fD zI?f(oVH>Q=h-U#RZGiLjtd8=Bi%mon+CL@sPXRwhZEmDX?ZTQ!t-#yP!b^QKd3OOK zF5rlokr(v}QL#gin#}|(**ggJA<6V5O1%jEl4(_TxPdvCVeeU0<` zua@<%^j_X%zO9rz-7 zK6ZY;O#c6A+ET{&+dQ!kve}=)pyof{hdqC4Pd2*|*3*se>!cZ)mv*7d_y5M@meEAs z=^tjZm+`o9?r%5hbi@DM-&!Zn1?;Kreiffq7%cjK`BZ#~I_G_fwEvwxEbLO=gS`K+ zOPrLm^cZo!B<{f-+3e4Ec0A2k0Q!EHxcu+O3QL}@@%eF|P@Y8{U;lz<>p^@;QHDHQ z|6)H9o=p1u=f`LWAM5!o@#($UY%9;XoD$0;amRWjUHGJDg3+&)6; z-rC}Sk%bXS)JFLUwA2f$3LB73X@eW(GOdR*zsWGILE|;lS;bG0`L(IMXU@f@70MPj zw_+J+GN+}ZL~_`gx{{yuZpOXjPi&g8$AsU>&PlhGV~F4~ZT_1?2PgRwo{+aKyDK%S z2+_HDT1*PdtfW}jbV7e{E6Dtk4fS%8Q9(m$l*o`tuYOxIC)xY6(n8qn*7{)_3r1-` zWGH8RszGQkwFb<{ive>ytbaSM>)IM`6tU3sZ|c?Y0e$Jp>?Yl?LzxEhqRF=0Iv)^F zKZn&fw_5#qsZa0AelRE2jt9+y8-`wg;G434a(c&d9tsd6DeI ze#j%gqDQols^#|{e%*Na*7cEZ;v)H2kDGQDW&Fq~N6K{{_xt@l&u4;f}TN&MKrHaIdCv_(2OD3I!Q*~PZm zZ4feGtniR1kU|=iD3K6m3;7A9dIVEt0|F_%A7`E6fjB$oO!c_|_Bq7871>r?9P&Za zTe>G0IQE!U<4C4RDl!aI8%Sy5ubG1)yHK;0H{Bd9)l8)P1>Tm#P5hG8GkosMlHtkl zal>PgZ%~PTB*^~pPu|Scgt(1fPfaL7b+oiVu)I z5a~qeGhnLkL6BFHqX)l@s|_GDzK99~Ui35$fIcB}skA4g`QAc{?;e7fD8MG^id_^@ z%l+_&6Pt+i8OY;Tv=N7ubl&-&jehF*oM=fr%sX|UE+Yp!cIY`L8Hx?V2x7)kFws~n zo2rnZ97kp@)A~mxHE^Dgm ztItSONZcCPqeV_=E}WH|e$h^HKWY$a!n2VN47tCa%`k7u4GRNb(=#cgh z?qVP>RR{6F)1p_r?MtrNOhyK-QGRfd{7_@Xj%4Bm-h$}dkzR7CxEECl_w6O#YO9*G zhdAZ>yQJ8dOl(oP+_#r`vjvq{+N3|cLTjjM907VhkO*UifDVgVxAW7I@bQ-xGiVJ? zNbp4A74Nmir&uOJwkR=XtIAR26l^Pj62)FEu6`1y@giw4>6r^n%!O`qLdJ?ggfNy) zCP^I<9-^b+A-}W zH0n91UcH23p5aK%qmA6G8=9#5{2ApXYydiST8oD7mLG168kT zvBQ)IahT4J+%?E+5dPVz64hAxyy`Ocpa+J^0*d3<=GYoFC`z3J^L35R>3?DyDzc6B z6xmaz%3h!s#CEARhI-YTu8l@1X`#AiVYH{M^7?(AD6}Egez`XPf?jgMuqyj3s~;BG zMBsrkqP8j>oK!R~?8`qd@3xnEai`5A67-)LF8bJ zIrtYc4+ZF!uLlF^-5NA{qWFb|WT2h{9WSb-(&OhxFjRB! z($%J(8_+1wOntpbPw6Fr^sWj$733@tbDZ%HFGSw0HMV00n8^TD+}U=~ zFYN1Pr;r3fKS)~@m0FxqYmGf>3^IST4_h*)JPX0~Wcv71IvQKF-98VbD zOeuY5&6kkbWvCaR%ezct!ymVe32DB?GO_IO;G@hpLk$jho+`LCj}6*Hg+wY-3cjlK zwkzGGg243%(SNN0uBoYnA_UPdST4E@$;NHQ* zTH*$Q$|_C_(z^x)w2jf>-MPPZC#kIweCdL!A!D~c_02qNz1qRnCI?$5$5sp4xOl^0 zz<3Ce)#6j7nJH8xy>KUre77h7Npd`!zhMb=s9z(!_IS#oqQu}?{Y(BJY@-}K*@GJ! zsoHp~{b&PevYJ0#v&y?#@Q{I%<-o|HmNUBrnXLK6La^ckDo81bt&*M{_4JP7oLf)L zC`t(8Xvs`(nUBE|VdZMy}QvK+dYRVA27R}@~nyupcPp|s-E0nS>UTL#3Wrj zO#aC&#ad}{G%P@KA-z`w)q$ox-wZX~QpbXXOXo@iDv#6pe5gQv1@dx@`n5R_TADJa zA9WWct-%Z&nlU}Ro<*W%*Mc3e9DS%-uf>{}VUVRUWqQ?y$eS4P38scJ8D&JcsW10* z|NK*NZ~>|L*ui1;2T$v%8%kVwo(Vjcp2cQC2FTd@$}Tmmu|pNwD9kym8rvIQi{jWj z3@WWZLYnFa5At_fv7vqgsrm+9mG<7(NjEvSD6R^Wh|>QEm01#?@IRE7&rgv1xPPM? zulc3Liacv8Usy02hV6vko`e^=)Ex^J9!RimgPhnBhL2Q8{q)H)rdZ8*u z%rfFc11up)xGa#jBjp|=-o3VnRh}>$!lRNRSovQ*++&)v7OiGXJZ--`_d?HV>T%c} z2VxF&gC1fC7yn##2RvH*2j|cNn^^d~ZQz0oBN0L~G5sy%XS)y=%m^iVGOcZOL)p>A zhhG4>Fj@rH#Y3UprNkIwUFvhTHHIU7MJt74v|c_0dwe)ncTSF0jiPJ^V7i!gfr`mU zd8eJJ3>!%+sM-Z-{5R(*-Gs!=C$e^@o{*$CLoJxnORxXCO$pPWfzMVSPA)FvI~yJ6 zMyX*g5r|G=1wMjmgm?wkzbZD!k3t!6tf|Gd({pW)H9nG5PLFLq%xa)q@&$~e*3b)O z+t9IQT34W_6EI#&aOb#|jg&*MnsU7X%#YAdN6D=v@e$47BgfXWhC%8Sqlc}Z3A9$0 z2ewM)Vo4J)Yvp#BJrn-MbvpV|Ya9$wOWVEI3-I^m&xvp(pPu+QVu)kZTp+ls1RyRC zpXNyxFG&2Al9Qvo3sf_p1q=KSCPx=8@GnY^mRl{|pbI(1C&Nrk+(Qw#XKwL`xIbV# zC_C}I=H?Qkt&`&}WlITH^T`l7!b=8?H?2zWLXJkX`4^tx@m!hm9hm^O32nD7CqhqM zUFP7bY_Hdz+S zuiRSkSpC8B1NKF7S+5djQ==>j%>}1gKa^zfAwsu>hk}s8k|3l}RucG9CL#|}UeM;9 zB>C(CgH5yHVY60_D8l+$KT36P3iL_%jJW-^SKQBit`9Qx!9V+ zk3CH1cxamp)G4Q_#w82D%VTu8^FnU5o-Z(t#||D<(_Zs$bVt2H3hULmurDI{hIu=~ ztWd^gZDsMxC;6Frxp|3=wu8rM4>dLLH4C~yU|CREOYOyrB>Sk;(X&OVsV}p}q9=FH~eN41rK(&SZM zeoB&8sdYGzvR9tpkWX6`D4VQTFH`~xZSD_CL?r@rL&V=UXXnNd26*65d>UAPZ{Bch0YFlQyv)*4-s6O4$`i z@w&%$MU6w1O@T>GI0S-Ux$#d9S7Wm;A>CzP!ed}v%3anaH9j6YWV3N8g|~8`>I7Pi z@$s&#jYBHlV*SDoH-gPY9c!_(wy;SPI*VCa2u9neq?iYaEW$#9bw3fuz(oi7oIzlM z>&+tzf2*tc#m&7ZD#-QhJQ=TF5k*P163TYRu0}pZWL)f8wE*Z$- zmn8<1@=#Ts)Gh@-^Wvh?Aft2KT#1Wxj*Cg$H;L1u3kPiF1%EF>E`Mg-&UtHIq~djs z!Tr_uR@@)CYRxHL9a`onhj&l|A6o&rDitzTET?n1zKT)1`+q{6diF(>Go5~BE}pyy z=1@k33!Ad%oPL%p-Y!pwwOQT!HhIH$I_OPyF1A2>)J8Zpy{Kc*!{<17(DwCtj5I

1ri?PEh^>mVwD@4uX`_cv(&qLiz#?;(jKmT!R~n-~$B;P7 zg|n)kaT=J48)xIqWTDS^M*wr{nHMr|YZt}Zdxg72+j~TM3dQevuo)EjU>ll9o;?%qxb1hjY%(w(;jNE``8G`=17MG_XfBf;Z0TK^DO>*`JE1VP`*i!fviRv!5KP_LGNVd)QAl zu>@@XgNjDJ*q8lew`Z#_^+abbDukmId(p|I!chm!U{T1tp7luG!I`Xm(l}Y0<6ka+ z8lBnaOL>(+MJoMTK9}k;4syS>c9=`j9G-jQaWWP*g|T-`sl`G7jn>$%1CCgy70#{% zFOF~>vWN4W+}KMzP(vwcnKq6AtwOQeZ67_OSmVnx+gWm7cz0>d%zr*ODZ>5>^Qjrs4S@=@wcsp%jD3Fx2)X& zge|epsj*u$auN_gW~b;X5GcuL_IJc~S~4b0iyiD0F6M6!oV_|LND1Quo23^46fCpM zMw`%;`(YxvL^(jGY>jxA`6j+h7b-?kkg<-U{G8sDP>&y`uZ&-|zsotNk)GHnf~2W! z%N5f8X5H&j_fSd=rzJMuJ4%RuVF`XC-DXgTlg~j4yGZK=>83lD>C|Emb*DeXmOm$dStKHA*h%eapBFVZUgi$2rt_MK8b zS$o^R%=!)SpdeF2oRFhSt|dmCNtB7hB(vra=gHVlK_J77Zw#2d&Vgj)Zg6zM#~CF` zY!2N%Sk6MRyl7x+KB5)pu;(9QR84Z2^*Cn$+V!2An(;3a8nMi1IzUNRBP;zH{1)42$AyTbJz&~BvZVcbEDb^D{Mk?dNeX{vNjD$b9e0`NY2K|TBcS= zj{NyV3eNcX2nEWVK^mb(ch?e;fri_}DN{?LIkkot2vnM9%O+_-%5d_HacQ6!_7jaRfpl1Kp zl2Eth64X`jNe{8d#qif{Qief~7nkz=lKb1e1n?Oh2cdbi7xu`lxBkvjc zc{}7;E6WNxs`qxOez)}ycoSVC=WY}sUMF+a+w+?X?gei3Ua4LhBr$)IKp}yrlm>xx z<`wI4%89Od(JpOserY-R+RB9m%c#?B)53yZxNjXj+i4SPFvDYAuZomoKN`5EbCJ*| z%_+}rqg|RbGY8?ftiI$8nIoFcz7(duKTO?~KJ!Y>Tx@zm9ml3A6#!SH*Z94v8{L&6 z#16A>XrzHiH;Xt;$Q`Q5JI-WN-Lvbfc7*r&kdej?!Z`U%S)Fv_r(aCOoC)Jf7u;(H8TCR?54=JlKQ-!wsQM|+pDO!lC*msYY76_Zm7FTVUeQO=jwQ+% zFHn6>HA0{|=F39$Op5GGXMt+?E(OuvF24Mqf#*svrE^s-Je`H!`h?jWGQalMGX13&tn0QCns zX7byEIv5jcaJwul>ZBZsUsD4O+yuc(3uP1X=U*<-<1E?0Iq9_Wni@#&a#jiF<1acs zlG=0ZGRno3otYa3S4glSzH7Zh^HsAt@dS%@pzd0t&3h;U?W>Tzo+{w`<5@KQQd`4T(gz!*!edMo}usDd7i@v+%Ko+(W z+AkX#XQO6aK~|U>VQrNtauITMnku7&c?j)4m7YXE&IIN-S>|vE-_wyg>&CWc?9=bf zfvP5-vCZdLwTMlWvr$8xGFpwWw)qEmqoCLB>0aW0@j`_ni7&d%x{|klDu3wU_+8wrZcB#ScB&Bpv%h_M#Hs1LHTx&)@_7VR?&cgDCOyD$2bb3Wd3TNw?#)Vcp}dBihOh#396&wnWE0 zYxH`oXULKCFS5^A)PCGfk5{Lku&s(7K7;cWaW^=B0I!^|+QzD7lbedlF1e@jRA3)z zTVl5?-e}u$V8^Y+zu!%O!oECF$0tzu4!YnsK6L#XaFGp5FtbFu{^02(HU4WY39{DQ z&Z$4Q0rwlbB%57~bsec0x;j8qL+*c7X6Q>zM~++5H<>Ic|{LBd0%NwH2eLvvlv;;f54Byk&yA4&v+p@r+cl@>Q7!#V&0dHWf2Cg5rom^ zJ|@HJJ;-fA>@zKNMmKYI$Kr~7hL6dUG2NF8SBq=9MQOwx#jd%~Mi%c1fEaP6k9DO5jkYBm(x3TOTTjBBbt$asLV8S=@=i>*h*XnXP{_*Mnz)iL|l@cEc~`OhJ{^&zO}oQ-LTMQky1NE+jX zlPPOieu_WmQgGU_kr$VqOjgac1|oK`kMcOdQ>S?kvq`j%^0dTH3A-82v|_x8z@802 zv`I^zi1@nW2>DAL8`CZ8GW5$Q$FkiVsMej?aFO7|uMSQ-&cB29qw!X7S$Kv`(+#9(u&1E!3jGuyUUo|c>=qCMgZND7InThMd5 zn+yx9QY{-<&bR)?(#Jw;s8{Pl-kJ-48kIoj(syLU8ln!BfyT^xHlXFF%J4^*)+Uh;4j(`+ zy>biM>&D*7g8_sUO3>!8H6#!|OJwWVVa9(lFChcFaEkE~r{5cTAhS#47hcH^G%| zt)unNw53xY?kRqjTD5Y!h^S}e_OrxJ~98k92jv~rYr6XJ~kRD*ymE(r&mdKlm zZnz7C%Y@`+hQs?=-z)A)X#UJX06BD;Bg5NV97#^|Ca+hAf;QoC4sU4tJX#vQgS*|gcg(-=O)?)DRFQ==7jtN%q#_;2 z8m?X^t!O(7{u;%KLPuz#e%6WLwXK9N&hDyf0$lz%`dOkkg}TycuX%M5nishWp(1Mp zDVn?AqpfV>)_!tKp$y6Wed$SA0dH7rK>genzEp050d1RAav@r4e}&G}vjRp2cGU6D zsEJ5Kl|(RLjD)C&uzDm!#Sc;8k^$!J1BMF$XiJ4d2bnYqukB+UYbk=>JPxH9RT#wi za$~wFRN0vP7KgDl#hr+{v4w&6W6u3VvKkxV!hgZ!3KZJP5GS_}Yo74**EYMa|#aB)A4lS5qDFDSK@kU6zra?2?1JWuneLN=|Aa*TtF%sb(ZBd6u) zx{|QxaMnt~L+ROlD{LJ%bz>~@<`7^ zliD-i&gTw&q%lVq7-?VSzQNmS!6N_G=F#4H$!P`2>%pUDY_g#mgdWgmpt%}S2+-NZ z7Yfl0d5;PR?7r)(86T+M9xXYjqvm9>ZfvKUksrbTaRbLbp>WPC%u)O7C1lMIvf}7| zxVH|c%VWKqnvE%NwXYI$ccMDlM{l70j!qfunz*&KRgH3_OO25AjM}d%MZ0MFc1)?K zR>(-|wug*lZ-<=2e~6E7IF97xLPx2`8VV0+*JJNaa!ts-P7^p;ebFIB)?b<509U5r z7a#HAyT-iaI5x5F{=?a**yaXt!Mo>xV`}zUft}`G&+Q9J)cl8R1B6``YLxHkiO+aK zw0%K;+4Nw#HSRMWEm1*R$yyON2OT=^+G~v?wZ_}dfLYJcTLV|e@A`~=T6_rfoYh!2 zUKLF_`#7lMDA}28hFS{kb+PUAq6=BKh2%Rcq`imt8J{u_oV6qG=($iWN7nt+Q~0-pDRJY@O?FS-?M;p?;9H^fu6*&P(Jy!A zs8z>=L1(cW_{I8T@4+AHv&SoSN$FVhxCN6B`VAaMIZXspWts4Ehan}Y+ z|DtjFH9q5wwwf1&YHS!JoAhP0g61q#_l#scSlm>9c!A*6;&jDUL*1Jo-OthZ?$En7 zcGMq^k;Wx+#>e=ym3QMERhHZda&R78_Ork!Y0oD_2UCR(U1}0wNXujCLxHNzvQ7t$ zzi6=#UC&V}>o;5SZk31>JNQm>b*ijS( z#t<;}9%wbxWf}X94GokFF!E!w&x!rAKu#}BsbM!F@$?f76xBbqSWv|BOY0Qgwv6_A z3TJqlM|TtYEUTvV3E~hVec*LD^;G9w;C`2W%%O4lqAPc~SVh)Ym{>`HcA8rtcTXQ)b%d1tvC9!|{sflefPD&{)1Z?Z}RJU#n z)eYm*j;1N1D9yJUY0Hul+opHJxq#7X_tID_gw?r5k*D6Cui@P@JFK;;h9YB=Y!XX&IiTVvR0{0CFa_M-VNpPfIJa7> zjfNh3zHo43w0Z$MGcz8YPqE2DMtmmX=yY2N>#{F-7ut5s#mP}#U-Em{{Zmy*moi^> z5N7(ls!ikRgU@&k(XzJcT6e}jxga{c&vXRLIo1eBj9ktbv3&_1l_9r;nzS zJ@w||nM@xU1-ZRh*z8&2iY{YkGYPGmNf=FcOZK$hVU(SPQ5L+#vQ4Z~yfTb?d@XxCHVWe?|qL8w2P`w|(Qt1uXg> zin{yYO-L)8Ra0E|A<^>$&A^rf#Gh zH2Oz0QpA+2Fi}N@2_<%h%#a}RjLhJG+3nk^jGCME1y>bD(=fA9h~Y!1=M;@Ic4o@B z;lQ5FzJJqE4PXgXeugUb{jvy3gE?c4)b*i?b3UlzW=2W8G0f(qI5RnD&Mw6F$t0W* zI~~S}(tggN1k2Aj>|psvU9jAq7&a`;QH3B^9Q2-%oLrO~t?(Ko6j&*hDMRUn)MI;b zx~G_#l)5{t)Oe483<1&dbhN;(#+U~}t@{OnP?ZC(Ll%S_nc-OJt2=*qeL@y)ElA#ioxFoITw670vN3eBQCFC}wHrUh$y>3@T~|u( z$2|!dUuTsqyitiwRwo039j4fO+wjepS+vJw+$Oy(16i;p$Qw-lVrUW9Nl_=(pY3G13D-!%VDe8cP&{iZBF+rninsxrx(>0kO*m1>Xb zyXMD9vQ(VY$I(+>BVE5+)U?#mOEjVb7%frMD3r~-owUu~=?Ieo=PAG>zv)ftpp!D2 z5HMbloBU9J(cBZbSs$*GBWtc9Etc2F1)#B%5vXi+^mkTW0bNm?luZ%2CLrj$QAF{3 zay8D7nAD0Am36OEsfo|AH8&CEnLX3J?=U$wy@x0KEpV|gQ2A+4M7ZzxSu;NTFIjtc zv5|1bQ5FYUr5a<7EDlxfm1`i}KDY|i@X=!Ocv$nu;u*;+x+g~>$8TaPC>sYTn8g|x zHSS2r#>EaM%B5i`v!D904OJK?h79%>Y5>t`^q1SX!l6LQ-!EkfPN;B2%9If>N(2GF z5=<53?eiu|c~zUImO2}|OsS&ZJ^aS=SjVW?`$K64rcGNTC&0srSwfII&+bTD)!qv{ zi(bG5pFB6RCp?WkY%lB~O(r~*XDIJso*(hNNBk`3d4q5A-mo{D{qxJ&?6;b-*%hRb zUwH~&%w~u1M0j@cNclZmv)L1QByau`e95l!2mH?A`_K6O0l(Y%{Vl)G^8A&jjraYm zpz_H3hx~4*4esyD#J$T?v%cdwgRuL2g|Pd4jj;Q?M>+YA51Uc{e!d(Gg23~Op7^eR zUe-GD%M-mXyd#@E9j@pj9^=~uDzJF)hmbwA;1T9*A>BdwWo zKd#|OQ&vJ#GW9gAn>CSzZE)kw>)F6%S*HH|{2zqDJjy!O^GD*{C;z*|{i|az;TU;Y z09ARP@hkeHo$N=A^I@G(O#a5KI67MDZGgn31XKRTevWH@mfH4@^ zd$-%FG%kL&{hoqFD%Oi++Nx3Rt~ENma5}ck3LB<_bm-^tmu>1@2dcpM;UMtagZHtie&tZ`IeTH9os-5R?=e=v3TBc$d54IoGGFW1UsP?tYQwST+VZ_xLN;E*i|hIYw6%>)xTSxt zg2gRLXG$G?BZRi*%)&x7h1woCRZT!O_g2nd{ z_lf2Cv0O9sl2tP<;5$1^NqRm(Nt3@kvfq~U7_G1I#v7-fr1FS`J=?H^WcwR$fD7+Q zSQ+;j1H}(?Y(u}iSvPr+Xbi(*W##u+k9>0<_q+T4@81sC{2Lbk92N_~rRVbS$%UE3 z%j3SgzX>PqSl^_aW0fWAgyffRpQ9%%>8?b;zByu9%JfIh8^q(4h zRGyk?nV#CJni5B-jk}|wpmzgYMl^j-wEg%x*xB^z%RNQ5-Kx2j)W_jYm)5rRb{Z=e z-E8>>vJ&3_m+8Rle$n(=b3jqJOaf8s4rm}vSvNTD|G4Z@b3lI7^}KVeLI${4iR5QlMSwH7LR zwI8meEHXy8l93KqayFdE|H^SCt&y+haV58rDRXje^is7iX8vR|85uEXV{;mvY2FEB zxe91uK3V+^;#Z#AokzZPjr$yb$odpOPIB-qTTUWYL{t51Q&-o7s$Q9TFHXjmVcmWS zCTP9d%04X!<^gEz(Dx%ZVpVYJ#OSbFBE4FQ87gAeBjeg3(Lpr4@i1mI+vA7SUt4)g zHvUF8juwe_NuzmVQ_&PBG zVBWbrb9~1lg!n61_4d>%bQ-IJTR$3W4!Mm?`~Ozu8L6!ra!;V}k{;BH`GU5ltHoYk z_zaxIY{rpnt?>aFr?jvxJ=Wrp6D4arFlQ32wln+gEue_dz36$3Up86P()>#%8zoA1 zu2w^7uyqZ2+Masz0#{$S(|pI7CmuRa@-Miw*8Hv)4tVR;z8x4z@O zGNM&`r?jC<7xZppl+T*kTW=|RnBuXS@O@Q|zuf#r*661op;{21B=KAyja*FHU)pKM zN=x={D31)L;c{ZOfx4~{FEr^r#idQpa?a$jw(%!e_36|aeOQl3buimx$q^OVN+Q+t zxjR{pC)+m)V((m@ey7Y=`i>MLE@`BYozHT<=}|&v>b>8t_ceYfpeQnw0tzXhUq`*i z`%3rlHq!P@gMS(MB+hB(6L3TV;sSSjFa*vjNp_SO45a??#Qj-zS>G|?4I6|sq(~z z$GFfULg}D+(+QwwoKhGi8Q;&eSbsjCYj!sL*nq}Bc0K0J-qoW=8nwCQ_5f5wPNWA4 z>1>Nmq_lQXf*MnaFJm9JL0jqg`SF!DI(Ljj4?~UMg%qGhkcv2Y+I6{(-#CBiE^Xx~ z+u2aD%B03nxK%Z3Rb*15=9bKu?V^BDUbh6jw2@cG7n~|VjoTP9s&R8OGHRVN9#2LJ znp8kSnnL?aY5u5O`*-OL&fwkF56x^Dy$y`prRQQy&e(+wKt`{qMyxfsqsP#%Dq`4* zY8bD1GG1CD3}7vTKQ{gBL=T|X6QIZqq11&Tx+>FhchIZ21=;b+7y&!74>JomfPhbnWPa>y~qS9!2%hqiDKnJ~wq*Q5M|nG3Um zcWiXDieo>i&3HZ2gndynKA@A0bJ3GVE5tlun^ZcfXfCp;>@G5uXZmsz6O-rAg#_*d z878+V74UDk4pK`N%k)Zn(DVTb56(FBkQqVs@zyR7TvL(t0lfeGxGa}CGJKS zK(!pzSe#o4j8Z^UuJFnI8_d1Wep)x863+Zymx`++xI=u2G+5d=itWEs339BRn8gyH zSH5iZ_M6aMmX^DCV;29H9y^Ma zxF1qER^s-8qpWPdR&>D4=Obk>wWN`JIk2R~`faUv(iH2rAogQ|XUqxvGAS*H{~0jq z_3z4YTQC(Eh6(w{6iX6YFBWh!eI0wZ@E^9l+eb;St-A84UbQ9iZXh-FQ`{LY!4PGe zk1L{5V4B{`V7j$r)=KqKul30hHT+nv<7E#o(z6`OibjABc<4`ifriunDk2=EJmuvICL8{on-Vx?fQe;@*TZ!jPj_q$CVXRS1w`ubS*)3Po)H*x=JcRC1N2G^5o^H|b&Z=}|Cmy(#lO$7va3MY)s>E)UgZo$`mPO#Jui-^X5Pr>^IiSdf=`8>OOtt6sSu~qD z+8V0bJ*_lQmDc9IOlhc&HF(0OKsXv?zJ;nLV&iY6d{9Q*BG4Xx164%nYErr(T?P#F zu~C@C*sJ5rHHIf{~x0~5yjHj0wjC>$wcE%!`>n3=WFwwgosL=}Y;Ma+08_Wc88obT05!7mzsJ=HBm^~pNN3#6aR@?{6bkcV$~j7 zDb8&<4w8wt8cFG9dtg6}vyM=1c8m6(`$Yfa`4WZsZNzD-c38Xkg>KS9DtUmcfgIhe zFH7=XlR-7j-`L`j1v_((gk!@zk>VE5ER`BU5^E5})okS2VEX-vP+^3rxLji7p1S0m zYA1XwXhc=?c{EQdoPFHqD$`@b2Y4dbe3pDtfxeEmqw$8z?F|$1*c!mcuFwZ?l_hdT z%EG1OTNE+|W?r@n5W_y1HH6)&?PzIF<~Md&x|sR#M(U^q62;)(Wjv2Fp~P~C*c&*) z^VUHgK)Hx?uM?JEd6zsxzu=KPlJ*wLa?4*ySn}pSa$pmp4k>G|^9-kKdE{MwNAUY6 z^2sCR%KI1n=9m3N;T4qWKJI=ICML2@&bxXE*~2z$#}c;4m+BuvYbyO=xzT!wCo0%? z@Z!4L#Kpm+vigvB)8NMJZav$SIWdLHWpnuaj=YL~)bGj8Vagx6yzWk}9&@rq61h8* z`HjzLE#1q}TjVd9ae6)4jbNZTrbLe&F2!E_!OZhGBb>24vz8>RZ;_Rmuj=Ng_o%*L z$|;2Q5%Sh8Q)T@aotN-&dUkVW5$|Q01vjsk^DuJWyq-DvDX@El=bJpgU(r_06N(e`KCfq6SgGcTu9;rdGWDFG8DW!) zn~2o-jcwaU%6c1V)uS^{=ZcrCw<;wc8#CR+7B55wt8pz_>^~{MXI!ebgCQK?7^^>&wQn|)Nyw;IvgXT@j8GHQD`s*sYYf_)?11O zh%z#ft$D65kyCW`Yx8;d2ZHDT!IpDb5%XE#v`2qV{aqt}L-=a+Ya^|}Z|rYknfizo z?Ld>P_z}M!1ABAD&>1>ie#6quo7rn`Tog=QiAG<@i$c+s=4_1CzMQDYii`zeSm%)6qAs(N_8% zC{$c!DQ!%J9wHo$BNFJU+9UHk2J%_VX13=kU-+NZUcEG*TL<#nZg zIE?x1l(^r9E&TDzFld3D2VvGj#_PuT?X}$YI|>6xdxp}UTH~|S`0dsP`qY8ovY)z& zp{s>q=ry>FLBY*9mbyu`Tq4KSX^@hF0w zgW2#m{Z)Iz?*TT2o<1Y3DphS;S?ubmgz~X%os)KEcZdgN8pDhoP=tIbrR?WfcNlJ2OIcZ~cL3jV*cZcS9-0%Gih{`9*e_c(9qIW8=q0~w7Y(~~XnMF!Dk>K}lf}{Lg%3v{j;Nj3 z_mZN+%V$J}7>Lk)1%=iWXdfR7oR1P&WZi5>c5@@Wt=1Jp-MoI$0)FISP;>-hcL+p9j^R&()Xz{ompLJMb9_+~ry1{1g1YcAR*78-N+1x*O3v zSF=IrV$PspOCfUPWQm0QEo=!@Ty?`+ z)SDU7_IPOl``EWRlE_rF6tW|gbf+Wbe{AQ^S-}T!wv1t(pZ-7+wY_+0cMt0QqS$fs zddm9RU`*?0K54s671Gl7-Ip%#WNL*;>+^|E}MlUw`d594iXPm0&?Uy_wbrH2>S{`l<3?&AuY-I+gnn z)VZ3ELCwz%q<*xIP3iPvt>x*IAa z(rpj#st)IU81E{Ryc>1nI^{R&uIutXq0>9%2kZ!2|I(=I{N4T*m+pB~=gq6O#o8~Z zJ0wbuPj0%tEY~O<6Ota%NC#{uNR<%plT_9)IY>jU{EvHa`>Y}2i?$V)t-TIXO(QyrJ zGnltK)-rD^H%#E3NWd_Y^JSxem7Tu_Qr*_9?NA+PNwo5b)_DRAo-;h2BW(NwSZ5#- zo--Tn9xz@(>y&FBNOE6jyXfNXNa$W?Rw-s(Un|SCeqe)VUABL?lCr<)l+E=GEwPj3 zNAw`-H%OE6#C`f&Swb*etzAz3V!LW^J2($EI`NSJhpR5NX5apFwFarW zwm9)JITKt^UBcO`xfhKgpj<&*OF~|R#lgg0IR$X{x*tC+i3$8A8b8K~gCr4diC~Ev zD+e9VNn9!r!1zN_vdS^qY5H1`MM;06h&7h5T!g&sGNzKkSaArwqRB3G|+dk%7K%Cc{B&v!(y4!*vM%On(-4vUQ9!l z+iim2Bz6#F}w_UtZf`8`VZH(69rql}6u8(`g-uITiYOLr>GQ%vA zziUeP+mi6`mnvkS_mWwH6i_>TvSFU45|lX!B=)}SCR}EAtNV(!N*uU|9g3W;bxWe0 zl!7zOiGGB7Wp2{fZfBgV`3Ri5e(jOD%#IQ~#6_>l(IZodWqzlW%;|Pm5@e3+n%`rz z*Y6e)mSH|j1}=dK1ZvG9%^nJw@th?XYvM$Ur4oL$#0SLL-(zbe8`vs`R3X$oGEFL95k=40T&v0Lzvq3jM*LG z4wi&Rhp6IYY|S&uDrw4;Gy$*Ix_}08{5COV_YxbueDEz$741)#M@Aw$9XNQ~{&WpK zi$6V}Xo&}SHqd85sv0Rr^M5Lnf*{PW-5M3RotVs6(DWW9{&AA;Pgl@LX-DLEl}s`c zqf(!VsV*+}34$(&7l=fJT=FHCvL!K&SE*jLK^NhKC%$RMg`D1o5gycTq)DH;OP>((2deiLG}H5&>J2TOx;@^OwFhW87my{F%1sf6G}x~&hCfPgcr&@<>RQ!7A}uVkr9Re#jvQrd?bYmNWtha&_a zW8O}yf-QOl9q{lwP=57hotr$V#R6{eRJ(Y+wsM7l&{#2nzq|;Hj1_V6f`S}KZy}Y;q#ghM*3mv5)%n3ATJ_WOX50SrDn{pEhoqY>}C8w zlqReeEsQfa_HCA5kDaN9KkEiQx7~KC*o0GIr)^GE&bTllVEg%*t8qpl z6;(D-LEUNkf}WR}{fLMh#}XL6SYI&8duifiBEshev+HYVM1NpXIG~X?bcQ|-W?!(z zF>h-z#$fjaWBMfbghxf!2u$hk(jtatEs5|Py+ezwEfLDM5)jBZ@x6|jQZwuz#!fF) zNQ}LUlC9PxVslC4hya0XZDn)KrE6pmwZyA{3%Za}LyL-l$ZKC*eF42zV*tw^;`(nb z63Xt>4`3ZsbpSQxIHkL1cS?(mrgdFmUMn!iS+@&wZdEU#Y6WZ?%12NB??Cw{RvQaq zCqO3wfCFiC^Ql`Hj(D16d~iXoC2rx1^?PDFNQxHU2P{AgS(e=O$lDsMYSiWp5uE~; z-pWzDg7-uK>7Yfe(QJ1Tj5-(hJi)40r%iM)%IRI(&Qs(pUXgiD6Sqm7H zal4Y`n$uAwnT)NG$pvEkgr4HqOLQ8!94*rosfZS@RUP68hQpB^Q%@IM6553$FYe9t z9?)G|$%0`%xVJV;B(&EZgWLZ*{8w7CtM!DRM?fNj;>b zM(tN9BD_HhtYXr~ahkV9UfSt}1JryZba1R~)GD=A*5Y#C1IZP3@7#%3*_@*v4yszh zR;r;AqffP>P;1ZPAiJ&HcwHH&+B$6}1Zug!A+<*R9E%vV^#d!N1TNrhV$7IUTjFFQ zH>Q+1WuSEVz*dfL%LY4RdV);;^B7NHTU6{2fKzL$-qK>?0wRcn%|^f=o&&E3Nr6Fh zP8RjI_xNo6l0WWRCPO)xlQ}gh9T+&Rimg%PGhBo`!AA+Kj*av!rRcMo(NHyeqJ6dk zc&5~6Co=?0)RfZ!3`;%SWGt4VL}u0}PzAJ^`y-nb3Gg*%df2pJN3F5LL5D~$7ZqZq z5CJ+1w3dypcG5TKR#U8%EU(oHTGbG05VBSBT9ObIlSv zo%9NYT8DQ62ot5TrrK|f`!4zw71>C?w%tGtX-Eaup*cW$xN(6ggmnMbcp4H4!rDuz zy@+&$r_FZ7=hBLG*9cx_~H=lRGJgm&4>R{mP;6b-HnwffMcJi66dHvnGE z!I6{Iyx&K|^aVA!2``?DKo5rsh5JKyr=B7+R6OWL%K21V)fD*{1LW4Ls5{7dH~$Ip zXt5Sv_2_g#qUTg_SPw1nCkgHMe-l->-x5qIrZu}Uh~i{yO*!Bx2w}1modL!>ZN*8# z@n5L2QF!Rt_7DcDHfjs6pbD%bl7Ue&g~QO|r$ARhV_ENm=J4`B)yvwvVu>43b7jb* zJ%r`VWFJlx%g!=|70}|MxR+Z*wgoB=1=t+$g>e@i3Fb@+cGj1+nx_P1P5Dx73I`E6 z6FekFOtc?^Tb=FC_@)Gjkc4N&9~=Cf3lS|KITYN@I1%|FRnSQdesz3`?M-y_hlXKSSYw4z z>t*(>n|zbC!)f-e`k+wd(SUJpjWHu6n~WNG)S-#&^ow$?q%QjcF@?8JuYaB zuAs}|OO$AiOgr1QJb3|n@K*)Be&hYj*hF?l4_b)vCF5vDrvbt}a=a(67wKzTWtqL= z6Hsj}A&iJPzb6G!>>AZHr8|$2C+lpU*R;woB(jk=t>ekp_T&@Tq4>_HuxdO@c%I-{ z&GS4@hcvmXK0*CQNi`w~VGtngk13QKBb(0vl_B$k)lE#WgV1T^j1q>v#B=tTd(e4H zjk%qfV2r(8Ux&>HN|?2*ddx&E_JbRlx3v}eIxJdHihmhpmlLcC+@{T)#z(*LBGMcT zb#NYB9&0>`J*5BG$Zr0tVuvK%b~%e_g%=E+wJew#Q$xiyy^>CA?F(msKr)_U3d9$w?y+reLYS*)kl?Q#^9fr3>XH5|vx8u5X z(CmwS#dH}rpbDoeR~$j(6`4e@SbryJ2ZjJR@?FVUuCf_J`kvgFI<05;eZQ!H#%9TC zrCNYGE48w-RfZ4MK6fLX4Pf~`fFgy_9;_ZaXewHrV+ZLitvLk>y0es5J0{X~bal z4a24Z;~R$Q(TE3P<1bn#dD;CjHr2{^q81Yc(gg+D%7f}Yydb(3??c>hu3Plv_pyq| zsj(0Gr#~p>Zi-xuC_T8E1Gwh-=g#&nF{hU7226(G%UF?^H@>j(%1)u=?^fL z>|{DVFH@P+4Pi9=~18@3+Gjcim<>fp+FK3zLyrL+t8Qtt= zz*Fa8zs%?HkBLvi`?J^6|JtX6lbC$mx-g4k0rN_9iIr_wqa7U)b@%0!J;vgnG8VWb zk=?tpnus=Ip-4)IHpePw$S)h4(}z$vf?-^|m+07Tae}(N&b>{<4q-t_vn)7xTc!-%Ni08=u?YyDbR z1@;7xE2}aA=JAVZ|Hly7|BQt8Jg~1EsnnLpMRN3JWXktc30L^OW5e;+*Ew(;57@ps zG8KBN$he{?yU|cKtw0y_AlFDk?fr;t92dWww#ilNXMn1M7Rve7I?|#C_6n5JlBMSg zv*;=Pz?zldJa-Cgba(nW+0^uNvZ?7e+P>YSrr&It zxK8ad?VRPVs8|skSf}Wr@l!4|$9#$l)4Fr@by(YBlhSK5AkJxa_{<-l4^+4-?CAFa zDwK7zBmP3HHh<)`499aqy4Fhn$i2KHH!7pqU3zT&XS%`~eVsbi0jt##y6YOYzQ$WV zbAor2>Fb6VZ~R81pk<_*8XmmQ3j5XB?K*)8DF~X%su_FN>kj8S6H(brjlVEUqJeZY;viSX}hEvA7ngxEhO9s6KRz z#Y{%VHSl>4VRtNoM!WHHItv*FtxkXE6B&!)--oa04mrjzRpkqTNiPIA&oW0eU#v!A ztUVGVRyD~;Jiz^!ml=$UDf0`P{-bfy^`i*w1e3;?w+$==I#`~laHwp^tZ`83VN~TE zXpT;Wm*W)!v^s=AdAlp)L8~n1F7-#FjDj}zGs2vAnzzhB1{HkEcs<=tSJ>ru>!-R> z6p*Wdv3H`zzRK4*AeC=kIOJ~a7fEOMtk$t!AEu=<^+n!&)|0A8RG5`X=G3UN5g)OZ zvw@t>2t&yaGV)q1LX!fiiy@`Z^9g*>5@MJ$HL64``gO0D15M8elFor`nd8w$!?)iF z-(EW|m>NGJU=Aq&wy$6kSR1`V{3WJ8!1Hf*FEwd%(}2r|Drx$If?z6Au4l)Kh6mOL z6d0R>-kT=`Ic3K{(y6PTWz zwM5oU?fyaBZBRhIn3j;#F|HtDDTMdeSy+T#4>ST=AE4b~jT4|%D{f7T`BV72kNj4)KN81Z|dpy7^uJ71J!SA4l#VjCo*2L0am+THDHB&$18l$ zdrQZF-R=$;J6*&Cf>fZIvJPuJ()gHB!1#$Meuzf!)+^i+Se`)i#jTU^}0Y)snAG^!gQsYcW z^?pSKKW8nxNZs?q8XTW5Ei2dJi^*>NglxGoV#L@*&md%%HufKvc9~n+7%8om(z+ns zkt<~ln21McKf_nMF}GC=;egw&?4}XY>!Y!3865;SW<3@`hi!~EP(5nklymlvx}zf8 zKlc5wCvq~dNXCZYtXW$blL=HM>!2Jk(FJwRH23Fc(t_C0p4$AS!&&a5%sQX;tG(LX z1H4)We{$q+rjWm^cK;9iO61M0)i<-0)h1KpofTy`EypN#cD*$HbBoDTa&_tIac);* z&(l?9`sZ^5_#Rr&xvyH{UKwSlzuMeMyh)!q9Fviz-&$gOZ?jT zq^*obskW*~OFT%_7xcxd7AWCbJa+gVE%6MURx~M?es@q%dok$!i;YZup?mDK8GuW(m@*1Xq&Lu`mb1#RW` zvEH8Tq0PUL2$bjo<_Q`%ApSRdZvq}wbvOQJl7Ioh8x<7m7HhP|1&N9h7R|s6%)mrZ zLD7m@QPheRaYj&C5@trY8AfR<%KNrfUac)wZMDj#1`?JepjAYxATB5>bB$KqSb{SD z&-dJWXKs=kh|B+dp7(ivd7hiO%h}KOeE0J`U>K3G2y}2cN*^fXgCb*z!YkUx`aT6Nv0drF*!U7c3c3Yg}ZR`CvGB~R)iDmYd93-ML>-H1-Ri9 zaT1G&n~Ex$fx3x16HBdrL}}v%N1Kw(`eBsFmJ82Eh#vq{txqqp=E6Eb!iyF~2$X!< zZqli-jmC>#wB~9!%WJb*Go#lddkWssk`pMML#bsk+v+OO{Hfi#_&-QfD;65hlFczd z3N2{Kv&owr;Wj=tlm3SjBwwxc5k#il^96iPa>>T`nA5$SDe@m4qv-i#JxN!Ujx%;z zY!feyYk1LmYF|=qkE~}8kDA(PH2+C(Yr39!&DFJrVQQg@Rg&Q_7Mg7q>SE2SwbEyh z$6Vp82geF0JdOp~9~Lv@=88*1=Hsb%tN`RaN7Bf>y^FZN_a**U)hplxtwvuaL+Ora z^P%P1ef3^8LC60`im2MtXv0Chz(FUPrf)Q-b+^C8v?{SRU@;#`7Dr+=en~0Hh16p8 zEg(O_Wh5S! zUCl`g=az1u`@4Ed_shPF45sHI2dWkDmbC&l2KBXO*Z2DN-*xsriM$jNj?05$9VDJeVlEn!zGryl3EP1ISIjXp@QxBw3v08%g;C?HT90OLhXFl*;q4^~! z#zNsDOLjAg3nan?x~+ho6cSRQZ}BP>AGD_*&ljiFp$a#oO#WYZH19>JSGG|+7C}(X z>@HAm3A&LOyD+P<7|;GeUvWY3l>A~X_IFZn0v0COOnq;`!L_I^t&T5qRF+n!fTga> z)O5#_?2R%W?EbY@2gX1i54_MdHQP))b**8xLff{J`;xGUpBK+?4g*)^AWVL_1g(B^-!3wCT3@mt(@ifV0wc&nUV^yF@1<3ei?beYn z>lmuVMw@r1YOxXA86%~%?U_-SV~)a?7zE1JNn7ipX_{Kwr*R-H^^-W79v1EtO`j&m z9w>#M?8RjNqo@q(wiIfO-sEtPm%W+EU*QB}E{knm!Fj6rK7C@oaTQ+#caB|%{4$2& zm)V3yJgeP(@hK!l+Y%Ts49$K(AJ)f|qJDprydTj?TkLJtSBg(udaby`eLfKV+8ulp z<=P47fOWSVTek%zbMRX){?I> zPMl|iaVmoHqPNAoIEp}dY!wp0=?%58YDpQ&<=8y(?xXT-&P??Z-W2S#-bfn4x{dJo zs>kKw`dqwsAf12wcoLYOFCUi32=k+&IfI8Q%9S?9N%ej%{3<1%;6(FmlY|l`A+m=7r}Z3#+`-v6l*)u?#ESWbCm`A z2!~}dCaki*vgk;DK{k2%W0B0^q0EL)K+F`j!JpqwyG`O1S)YhJi@NKcL?;R~#iYTB zE1u5Ja=n3MfWx?UK==Mf@GQD@QI}}%Tc~RggiJy_!13(2kuS-2+2Ag7?X1EQZ#^71I`KGkv^{5(F$( z`g3s8p19zq*y+49`tgq$6PeSTfF>k3;aJ+80J8xPQpC`N@9BJ{GN+~tTRIp4&Sp!` zXW=>6(kSd>hAl1oBJ#^Xa^%-)iqWZB_ic*HJ5_T$C+#!%2{FCyiUFihV7VlO@_@|HLRPca>bEr&Ts}pdjZfG{1dC?zf~*E9 z)f*Kxol@~>v1g_IEH-p>klv}i!=ksV>#=qp`Z$#RQCX{F%Suj4jJVwLNb@Zbr z#$^6wl#;3s43IF=RbDl8gM^I^7pjxIb`pIh6R&cKAA+!j4e^b{Ch3%ecf^EFIpJ-- zQ=Sx3Or#h_6lpsyW>AG0;=iTE=~|qi=1ABooL(?+X>)Fb$B`2QE#9k@5!S2VvBCc= ztq^EfXiTCJG;t}#g3%TR%Q(JQn1p#IkETv5*Y4iMxS+wF{UN-H7VAwXlfEN!2gG~H zjNf|<&*@d1_^!<hISHS84PW$-qjXejUce0?0CJT0T4+-g^Nxi%lVeT1&AK- zhHl0K*o$z|;vgiGe_bgnju3&-W!!*ogC%Q&(cSr4^oe66VWTliz5kY`&Q>xXtC_Om z8=%I_z%-_Nv}I$+{e{fxx7{LVh!!z8p!}psCwWEt7Cz1^YPZPGqGh>}o;bHuRx-2r zB61oSYyA=ks14hP(LBlkwrfso0o#xAXgtP0w3b#oguxe(gCo7C7f?^Z7orzyhQfC{ zmBuH#H@`0AU7dD~8G~pi@54kdGRgbPe1EH#kas>L`@V=UlZkk2llFPCmL5=~y&2NJ z2K^XGUveg8Fc=1bdXo>e**V%MCc>rf$+{re%0mrVx(&g8NLKQFtMoSl9-MI6Q%zOq zucuD@t?ZHczyz^AeSwFfJ<5Hdf)FF#uVb4tbf5U6AhZ%C#UuD+$*@nqHQ#6ec1@w3 z39PUNPVo!(1R3rntPK~yZ4ZzxnF4xDQcYaj-%=g(LIOawp8|Nq(9>JLn|4d z1~oo)X0Q97m6KESs&qPe>DRHfbQq5lD9YlsB`EnYddvZwk%GQ`sy00y>qor5lI}(^EA@i=RgpyFucH4%sjp^ca9( zHRxiqL2m)cszI2vr>%!A%_t6aZ+?T#{Uao$Jtw3m9)b^3vps$BeYXlblBLZ#WnZlqzvgy;UXELa8& zz`zvf6F4;`_P-uTIkyR^5I#zaeuc6oODfU`c1ke09*zp^t8i^u#X>E<^=*arOy_|I z&kzhR_(lmEPIH5ChTuyA#RUeagY~dlIdhI{Kc}LS3DYN&*p|kJfQgByucrj@jr1la zhl7brPm)au5++Lt?PafN(K5h{bt9eype)7WzP7Ei%wudZ%bBHQ98Vdlw0nzB1%!Lp zkN0#{%^N*G+6<$)0?sZuQ^CkC2FSlambo@_DX*i=Fq)ecNj4eHM|f$xwAm{5o|W8@ zWBwo${!gd%gG}&$AHJrOg8p3xYBT?vbjAW&W%e!6GFwSD+xiySenSr9%1mveRJMxw zNiPb)d{|+glT}v3wV8c+tlDk1vxIx&^h||6Yn8JnUmQ6*^JwLaf6i`H;~Tncso~$_ zxk7(4i_}b2yU^ue;u5F40qBUlAv1wSFm=fsc1VsVR$fvL11|2 zzZrTrCA@J8BuB=M*fh_v))rs4}gym46@%WKYjI!6Y=;^fAw(chunF7!@0BN=@ z2mSpc6G*l))ZT<9C0S%%Z^ZYMZ8xwT?5^Czz5rzwJ5J{O5a>D#kCYcE^8+3Yd>3F* zR;Tz^^nfQ>DS~vh4i^Zx3X3jI=|W@SMPf@> zkUNGXn8GQCUJ+3}kjQNOva&g8C4^j2@9#Wzl{-^VTiznfgp1f|{|J->{zrI&CYZJwdcIv3z# zZbg?#$BOtt8>=>F8dq6xr`_}Bn`YVZN-29SPiCDf)Lmtc785(E?UQph_sL<(FOpze zwiip!i(XR7vf;v@5RMK1$d!R{E6qS~XBP^Ol5hK2`~r=S^0U}wG=r|q$}Xa^pdh@g zaTJU34>e@h!)0Z}k_CtmCPUUhpB=)+yKjIHp5Yzl&)Yl%DaHKxawyMoBA>RPV!-5H zc<~%ac5TU(d39S0wHJ*qd2H*w@k_{~>AeB7HbxD%zt%iB!%}?g%aLPW9yf0jYaB<8 zZ%s#z3t(l@TM=%ojnmC}d{RCf4yT)|3mDLTGzT9JN5c>VEmsb}tQM!V3XTYC>Cy40 z1AuMilWHu%(+)-)rJItQ0?AM>RBpXQ<@O@ohVa6tUx--s0b&(rd*vToIq+cgY<1|_ zo+be-xwhn&L<`%>_ZLG6LbuQf*~~Ie#39x)*a6HEyQY(rmQ2Y@{er?k;`}0Y+Uccz zIQ!1L>lczU@RkIrO=$p0S1!+a+2??_vJ4HQ#J*;vI8&^XenCEL5$94E|K?@Y-iN4P zyJrxXt7`88xsOFYguv{rR8rTC>i!_Gh!z{my>X(TIQ>;6pG<*#2sX6jlT(!1G+HNO zV51)BmWh*8+spXs2!M^Dr-Rex8!KVHM6%H06G6J(#6(E{NQK|e<~bm!?^3ye;EO~d zqy~e#>`LAEo}fPheqfFnD;O|-BHQ(i5-BFSmjc&w=Rl>uwaXJSFXe^U+)XpgA}!~z z&8aGiWiOe0A@H9?C#3XV&>LfFru5A%OaHT7`l@}FetdhSKSwrW7XQq_=tE_U-2%n~ z8A6T6hpL9r3$^H>>Z8yO)d>;rTXw>yC;!aL)S`Dg6Zb*g%N{{q(IrO9mU1o95#KJA z*YGcS={HeRIMAXe!2XYqJ{JQJAYe)_FARCz2CO&mnJsNtZ^A&k+OU2{a#vH$nMhE7;WoRI+c3km=EwHPoHLj#2AlW^9vKIGXrg^#S8iOd>4 zod3j!b9#|ts5gPe(hW|28he8>@V_WTQ;tn1t!&UJzA4fz4UbQ3!rHHizanhEaQup4 znbUbYwalR~2eTgKu{E=Pn_|{ygTGBiN63lAtWS`|0JB~Xa>+33dO<4{i3EehG3;`7 z9yvS2Vh$I3>OL;iUM~A`>T#-X-+|534ar+O>1W!)0udRoU*IsvzO5_C<15ZHEoAiX z=E#vPOHtjG40QLa^vW`Jwpkj=IaeO4Sc2Fk{F)t^OJ&izPDoMuzlCi$Yb)RHW$s%=cqLRnBH-14vbEy^y*Z%^;CrkhCQ4}puZY}%N zeeZMzZN4STF^2laIE(KfGs{_l4NwQz_%2%8HITgc8}Q&rEP7WH$Y@L;v3M@P>`e=@ znBA3$QTQGV8~^kbsmHRe{N;oU`{Kbxy+rxLnS+qv6P~}~{feH(_M^5v3`FtwFeO#( zJ-tY<xj{Z;Dz6m_4|N8TUHy&*Q~s%8`A=0b_9nitSG_I3kk7~mAjtx@;pI6ck1 z(FBvhuFoCACb1-C_o|8us?AE^XDER})uODP;}J)^%J&OvjeKJgpD?sQX$W(#C=G-O z)ZvG#CM=AiI9g0oxI8IXuLY$E6xq~Bj@K4~^JRwMaOTUBP%&GWoD?Ti+&TLKk~6h9 z52AC8umSoTLH%|1s}z`Y2PX&P*SvS2=qUnL!W0YIAMKqK%KuvO0jIeR)w zD+h!UcM*Si34v*l4z0dQL9(X6%SMc_F z&Yi(ASX(mGG`INmt=fZ1Y|1;01tCY$$1h^W>6oZp)AcwT&++ntI8M>s1x(aL z-fDBc5h)&5F!ZUeaB1=MY*^7|_k+9k=||X`>6AX!q{i&OrV@+s$2}L0lV|15B~DDX zoy#`O!skz;Ufd#}3Z_XmvmV%n+y#(++7sP%l@{9$XP6AkVCaI4nH@vPzWwTiGwyMT zSmtn5FKJ}ABq%-E{n$<|*y6(b#1QJM^6<$QgGJ7-iZKVk!rzoUDLwAdNkP?2#m zzcyl6^idWuJf`kV#PA^Z#*qkSaG|s5MnY|-i`MjFnsdVa>GRaVj8d}48ju0qsi`Cp z(2?Q?Ry8%?_TDVBPgt^J_-^Hk^lB}hztDUyc_GgYR1jz)Ir@a=x zhx>hT{K3Qp_}7E0@vrylFL_H|$HQLY9?MxlTM7ofKpoo5Uoj&l^Tz&r)hdql7Q2ilY4<#Q0E50%tYiL?lo)3`wV`p_fw3*p6w|(iE~2q%sP#^v zpbC#o`sZOU5EZS`E#_GKN_w3>64+M(+r{<7v`mB-5EOv9kQtbMU%=B4Vkd5}Y)?oV`X2LM5G+|0EO{{)-GjpGHX308 zQUw-_==V$=5zSp$`(RBI$vEvZ)W@Gp5-%fpKto5BFC+^fa!qNh#RBrOKR z4-PiOM@{&9<(iRmYeK zHH1=h$r@M*niY~? zws(?YYz2t0zJg=4*wT71!fLvrc)x!OlHJUC+aMoPtr8ctN_Bp&zPo=uF(-7An@rSD zG}*!u%2mvuT25O0?KQGSxA?2CJt_}(o?dtp)xBS+tz~D3 z(CCQ+57A~RRJLLxog|(Ov}tZJD{x$X6}p}DmdspVhOB1JHI43@XN+SlqBO`?T=^i` z*{a0{Si&9$!w8mv2^>IgGDRH5X9laYagOtCPNrbK*jj^h`pu_!k5`V?fBT ztgtVp7Ymz7ZG?*~W71zJ`)!<>YXyDQAh>M%fo)ClOI++7Tx7 z&PIKqOhAec(9h3rI@bJf3m=~Q7I5&DK!GE*na%l5Cc&$(G-e3$W(Pm6L}w+0w;A;S z4uZ{HCTlB-m@tB#zNyXZgBV5U*+g@rNL9b!pOq&klZX6wN&Yc;Wk)^GG|c+GrJBt- z6xn}dUelS@yO-o$j|b#ck@adBugt2GgFd?xwyMVi(RI1eX4op0CKbbME|lq1WRFX zSc~~(dm{faE+AdXd}B2bT-AJfku2#iaCE3@Hif~D)V;~`ZQ|ZIl<5Vp zX7KVAb-cU*Rh!}^@3wi#Y21{qHE!o8Irtmm^T@)|qCu(|A6*(_^biYAfdw^=qyV_^ z`x=$92899~YNOGKw^_48*k_s?4sW@--axogCWkaPtxOKrzSP3x@D3@ICgL{GI6*WSq+8KUMNYHA`f{L_q7RT3MN{S+oRx2zekH-irmb(f3~6KURbf_D_jjKa-vG zS%M?ror?5SBMW=y#%kXIp8nA)`4;;duZ+t{P_;*=M_Kp8}7jdlyt8yAM!&UG4yx2uGYtT5}{;kl5mC^#Y?C z?L=V&sZh~HZYwBVTiL%W(@my_Rxzf}FqEK1GjEiLi`1^i~bS$?>#~a$rRV2cn57IG9@+{BhS(C|=?7KTG`S0pfHt>F% zbo70c@6{C9|Kd(I>FE1gdDr89d1aA~zSAAW{F7o5J??jqj@^a$3)|EK#iAA)NDCyU zhOvt=w3^@FQO0kijI-{KzO0DIUWf>W^qi(=wZ#|9St>$A65}8uXO!*KX8v42UWmv} zh{#5kN^-IyB6|l;j!ooi;)Y3k3bHFLBh_)>yP|3VvStxXpm;8FG@Cc7WK?*?}>8yvpTY}(tP zHX25AuWY)dMTI}hR9GleTb8LzMn)=ncH}-s<`F*2$P_S+#^0rRYNN(YnF_C_x<*bd zsTGrlPxD=eT2T!^E2D?ZgCK}&m$sO_(F-S^3?^S#-GxzI(7(EpD%9A7i8kk7NPt9< zQ2JLnC)2a2hp%dY&9hT zicr8Yy3;h()j3a!*n1cJmjwmf(WKhMyaF=m2U}`Z#%aaY%wxh6 zGLH`ip4c||5gBC9Vw(ajC5=dz((LSJ65~D587XDhTR~!!1+`aDXAu91ognYEw-ZDk z%tny&rdazx0>p}95LBQucG{apa#ZsNU~4;oy&vy|KW<{14tvThoxIx6w@+<+&!-rS z7HTh%aFsjw07hOExs|JDa&*CWice$i0t)l9_0bO0Kp>Y`h+$Oxf@l*84;N~*%SG_f_?5yf0_)EoO zjvzrbET*@AFt6z>>*d+X~qClsMX+ z!l_AC30tPx?N9dXAtm&vhB{YQJRq`N>|eCJX)*0nt^ttN?tQL+v>q&ss)E00U4Ge{ zkk&twFnQ_Q)fLY~n+Hyg1%x{T!z=mhRo-edXUZVR6sxhE2=*P4yrOTO$$;s{WOjyc zR|o1YgomkzToXKvBQEjh{Wki+d37Ij?y{2ob>B&_r1eIz=)$dK@&PP>S|+l8An;sv znW$hBFuh-D(O>XM4NCm0y&~C|4yFlO%KV#4U=u4z`Ev%@tr1%r()=rB(8R%%6DP;Q zrCETFGpDhH9*L82Y@3LlZ$4uw5I5kIA<8&Ylzc;!ad(YSq*^KCW~lqD&JAT;4-r05 zBJNii$2pYYqtO^?ixGipiPvAcgIN8tz5}?5m#vC?Y6rMTUuF@+7-I_G`(1ac)_UD&Z&9_tAW>#&XktNUrdc>YZ2K zuRM0(O~Ns)*YBvUPy^Bcw|Xf4kcMOmw%XBE$w}gL)%xwV73SqsB#h8{97W=Hg366wVEY$OUz;}>zc6 zOx1~-rh|AF?h@Tqgj35u?6Lf(j4wQrY^ro)P>gjXHFvKVE4alGCBB{k;b@z>EyRVi zuvs_3X19J9{rJ4Pk2`n4$;!LeIE_K2P*Dir`v;qMa)#?FQf%HWl-Gux(PCqyaf(0f zJxu5X+EVv$J4f?bh1)q%+Q{wzZOH{KnUxdFNfp;G3){)Q0UKoqKhX4ddn6W;NNJRt zb_z0%Gu~QkqPkz8?ypt%CPz5L6zgn za-stt=xqF+4as%|XT#=HrOgUXR`+HF$8c|y1EXdS4wS}O)8u4V?5>Dwu5kmyP?a{@ zvxJyIRcW(5k8^KHpD#pIdk~(JeYamH?YY0RaW3ma9F2xhU33e6GlcH6=Jk*am6F(> z>v_M|LA}z3oG+f4W0Yr;Pw{3a+16`lv2i%4d8;qY=rd4S@`lK(DiD!2^SURo`Qk9# zM~hv~ZB#|(8Oa^9Hk%zbw2g<5zCl~8^d@B$M92{~M0TQ!l;plDg8Bxdt12aD&d+9K{~O{R4on!>{ZZLwZSYgF?-dRm~AG z5?$N)_g?{56^q7)0kLZJY^Kg}02{>K0Mfie?&SZ-Bor zk<1rZ4dh4e0_AQL&T@k`djp*p*iLvS9_XF$7*9ps6{Jfe)=E%?KHSPa0iQOc*|?F1 zATf4v0RZEa6XhMHl4`yg>R1G|RMjYnGcOX`yBO`BQk_#y_C`6)r6mgzTs52TzV>Xfw-sFNM%(-0TB=v{|o_Bsyg(iPv&x z97_U@xi((lL86n0@!7lLCEgm3savcCX%)=XyJEfE{$9Q1U)m7w6z_^nayyM%xy}RT z<(kJ@on~D+zjFPBYyOMr^aid<($0Lry#D@lI{htI>)#_^N~dq+lC=LJtz1)huI1Xv z)%#!R^bK4ObDfDF*t1+;a>ZUrr`RdRj8 zyY{xUIr?rK z_mS&FgpmumCUgBaX*+tIwmqHx-@fd&xz#J*+}{6Rc_;1Hn6JyW;Q_?;cdk`jZ*rXr zFDlm&DP$6^o4B@qkE`n!>Gc2hWw+0*Uis$s{{PB5X@3O@&Oh_Jk!u%MH|FkGt_z`g za$UxKjO%Y)$C0+9*TTk3Uu$9z83e^HvKSFZG4HFnjCB3`8$_}9?sorw?S@QsnG#rum_9C?yD75iC3rd z8sn||{19)|HhK1U+3DR;?+G76)!_qz(SgM|kwbh$Xa5-E`+KQ!biAA>_B+z#hL4vt z1;Oal;)0yWVJZ;;V%|#~sS;`N8>yLu`QhSB!or-$;hf-tH_m&cPkljCXj=R{QnC%F zA3thljo#eZ^J9_@+Q%R`*=usQs*xq-xxA~t%5N;p<+j*Lm-mxX+ZY^z8vk;tjR zs*h2ErW4&yp-|4C=lD}nHFWC5qx=PuHCs?Mrk)*2b=-f;eed&nW9mLcoAV$EQmJyj zjN7Xe|?S}>Q z5i~M%ARAt$<`o1yFNXA8P54`kps8!am>VueNq1o{^-HLo^hdh1fNi_{aC>nKe@`Ca}qSKwc3YNWm`%NLwu7KX@CLTljfRH*4 zk^LtF&ex|7C>Y+5KS1&f*L?$u0*Ri3NHts^HK1^KgKq%dwN%bF3qrmQr>EVI%arA0vq?ROeRV(cWqC zKofoj__st3mW{<#s|C1zX)dDFYXf`dSn<~c{w^LVP?sFEaU`X9RP}dl4NMwO z2B1W0pDA~V5%hUoVCP$b=+r~E=Y+3daJH-N=(kaE&(V@dKhz#FTyL3D)zLfY=%BOZ zbF#-df#|?a*DnTXt}5tb(zp|^h*;cO7pQbk=?jdD0$859%#BZkm&w`d@tdY zAnd@erer(!-FE@KOvc0VB{7V`YXuZ9pzr{N^UK*M$snNE^A@vk_NC$jSznmCg9Ty? zBzxQQAjg0NBvb(EV?tM4TC0`BD_K+g%;kp_R`4B)LpjVi)qMb3S-qx^7s2GL*#aYa zJjD}cwOM!b$nU)|^?F@E`^Wl<i*qf(5ag++dRomK$G=N`eebX!;YT^^NO^EK*8=|)5Rb^c3QHXPaX$n7Z4CJ<#qJVfG?RKZJD zRPqaJ5KNf6A34XAkLuV}MU3U73vt@QM|wWP{D7I9P5upPzEX#Rf7t&VEPESAn5VSp z>kN7@c|~zLlWP&HB>AZ&c6O=FW&=8+s-9>9|;4UZZ%knyM-W!&B z;{BeVytXK>qHMJmy@R5?)%nHAKxO6b=;S_Z4+xI)#dAWQRCg!vhN^G&EH}g#+VzyZtwoPfAML6QjmK!s>-^7& z^t9(t9yn+PDK!Ki= zNwlo`?VS>oxa5S{*Imr9e))K6TDn%GUT4@8a^V zZcDx|8P3BCc2R(&p@gDPA$?V-WNWnM30`?tz^Z^h-h+VuV~-qTR-rejlg#vZ5#JSx zc^tMA!)zZ}CdspeF%>wSD38K&E;@<3)bnR@XtY(YKRKZuZ{a6}OhXpO@KaH?O}qPc z3gT2Q@dMEAy^)6sIS5 zR56!FJg=9HmfuI}wCD_OeEQ7`*eE}j=2X~#D7dOSe*ga>aKpBNcSJ4@vO}74B{(PB z8=d;>E=E^liB*)n<>LT2t5K6mEA-d02&Mh=g@YjArhLgs+e&L=EbgO0hR*@4>E#79 zNePW!b=s`Avc8hmyo>m_l@kpEj@ zcck!qqlPKIVam_gCO7Vtpl6*STe-811)st>j$0Y@tW-&(HA3v@=7}Vu{^99B)$Uq~ z)@JtL4QCp_Y*piOK!k;^Qrup?h4fF@X6>)8FgsA8f9~)1MMxh#HzZLg*yN(ci|8jX zFom9aU!WlJG?C7v4@)vG!O9)DB02DYuz@Va$nOf2Y(zlO;)crerid;V^cAUq6X2wY z>D7L1v4-ogR0-A$C8$=#)finH{<9%o(kiZnv4ws)hK9lOssnaq%+BJ&cpHASB@+P$ z6%U_tS^ES$+bf%=gbl%%mCbi}W$z8bo_}M7XPp|d45+Sw*QnrFshM}OB#b3Id8-F| zRP6%~4tG~GH1IHv@}MOurtQs zAvi7{(zG%dU72T`EG1SC&r@wtc`J7x96m_3y>d5=|1U~fLDzB&K@3!WC#Mq^YOkma zaxULIUK^=QCtA-5QQ6p<#-2U}3-;2D$w8fX;nVp0wYY$&UK5}x7RUsWgAvTsCi2p? zkV)TcwFi(X^RX-9Do^E}y92tlUHf6$_RQVBev|Rux?c_8WKNI%It%i&IeY#90GCgE z>*D-yN+^p2z0hk$O3fv^2xnR(cZq3pBLVS#O#S;|;v`Ra+YoN7o9#Nk?Uu zqskpQHcjw`ZT^1UI5p;%B(^%*bgh*jzSepZzR1__D*@U_h1#9W9;xh^=9$A!n?lLk zXxw&b73Z4-${Hibg!DI4J{knGbD?vTo7na}8m>kSuzB!0n{lTe?JxP zX~=(~gu(IZ1D`c|@1ZkUbY@(|v(?9>7hEoWxxT#4&N^C@UaedaGwa7&dF~yN?nvu- z>9vtBgL-{a0mpvEW$F7%I5u=w;1spT%CCoGyVzORd_NA_&j}w(WC2{0L!RAUy~iA@ z1<^WUe{_o>6lgK=zDmEs{0-Y{0X(}UE0R+W_|EtlUkI_FE0Sna!uXC|@Y)XwS+seu z_@}%wa+QmoB8=9VoCU_OA#oN$w`fv;(5{?;aQS19?;I`u3N6I{NYOi!4P16^PUW$n zo~CZXT4(Ub;zQZNebnRw@k@X8woZZcs-{mXo9_;Hs%)Me=`T?fE$mV`@XR|R7jiJO zqAmj$=R|yxaP7U~Ej=b03C?=lo+IjK)?@t}oMR2S4G2kuNg2B z6Vpek(!`A#U8feCDK`zngqHFvnkIhAtw(vHlA*#Zq=OAZWf9A-uy5(gK|`*1h#f@( z0?AI7amOa}?G2Kll6ZxDpJDnv%L}v*MF9-2>Td>5ed;@PCW|MSBodwOU&=4~8{)_7 ziwYPGZ}eQq9RVQYt7sk#kZH)#PU>{cIkG$C;GtK08}1esMgF`mhyaPy73X79G4#2< z+~bA#f^layBZ^Z@W|^uPsh%cRwvzR%|(%Db?Q(zV^9K-xJ;Hkt00V43c0L zIl?YEs+T8F)x4cuX_F6ODSHZ0161`1I8BlS)oG?Kw8B&_>_&hMgg=%^gx5+00Y!GiwO~A-bb{`MS^s(vmU}9LH z^{C6~uqvNk5Y&f_l=hpfx3oV$Nc;0u^M@4r6H5eUN^AY4pQ+IE_pR~15a5kZ^KYSN zd3N=~lcP?O`Tv6Xziof@cai#&6&^hC0bx$Rr481c`)0FM(Fl4jm_l{oOPTDZ%hd#f zkh;nWWgV-DzO4`+$1DnwPv(<}V$_q;OhC`7R*O2$;j8JJeKi`q+T8ICInh*od9G)C zbWg4}YbG5FCBsMN2GcJ;FYDPs&!gw%M9v9~Q}S5Qv&q|#nE_Y@rQT3HSm|2t(tF66 zYPywaq|tfxIXbAdfFdK$84`|!iCy22!%dFS3l7HHaDd#a7Ti5u0DRm$5xLkrhn_sG z)MBZzlXLNrrwJzoJe#90a-3(2>V;J*-LR~jAM`7!8NWfe*VCybU@FPQVXIQFzRHo! zo;bo=WY)(1=IsS0w-wwt;9lUygnJ#h=bSgG_>CVAtwY<^>ISXR`U11caX-Gw*I19O zI_g^G=N_}l?K1F*VPgUbFjw-zqRc`JC9f?2WJeY>o#nO=W#1|q7|9yc^NTC=>&FBe zI0&#v$^!=k8}f^}&5@UdIlLuhAM6o=JlU2B?mvz^ePrY{$Aso)>fa9{Xo3v1>Zib> zATpLljs&<0A1+4|7D_mjK(x^l)OiT%R}}YREr=F_2xY9#_2ItJ0ZjM1z(YgSCNnS- zE-T|zpwnI%D$`>vGbKjY2+a*J&vM1goIy%gAQt<;%0nE``HresLf$x9`@<^!qbSWf zT=7O#v50N16}zGE_IiB0Tg47A4Mc}nczj}ks@3~b)cPblSle{hwbn7cRIM)pQLcUc zKC^p{TdmAqmgd^CD>T>a?nRl3K?t<@2Z7ac^yF>2+qz<^94Q1pQJ(Fn>ia9yoPFhJ z!uOfy0d7rj8Szl!4zuHz{S>vX>EhCH*II8aRDIpbAphvTUeLi>!B8G*joj*5V`mrq z*WN062Rh$of<;6yxw%fViaH551mdeN?^Kj{uoA52OVq^VhZus1>*i0p9g$5qG+2`5 z*N|7S0v2m02o=`u*B*GgzhKr7-fsL{Vb_J9c+tU?OKt(xmW;&1Xk!Fjc7>6!s)e1P z=Bdvo#?FCnVS~#0$azADB4r@ut7(UW&S$uja!L*~$PSCN#i9hPl3`IA$an)8CEnzj zs;JZ2DR6HhU%FWg=qP;JqG|X<|hd{e?o)ato@guKJ zl#kKts@@khVe4s%jc}kQ7r7AdL)Yd~M{^$B?Pm*2yW# zu(HNcz?pDJ^X_0m^!P@q;V>OJ>ERb8$U01p7GFqC$Ls_X=eMCtY&*6Eotw-|ax$5F zCVRgOh)5%o>X-4R-(~(fKb&bOgf@oOCci|9qJ%wJEJwqB&)@Js! zfveOLQ}6*novwOz00?YPi~ET{kS%bbl?bSq$x@G0}9|LxYz1N2@qV6 zb6btcb#1G2;Nq5JvPqT`W1C%0RTJb38Wl!M$bnq@icY%(QFE-Yn|a zKvWd|Bm;3n+v;2gA`j98m$*|xGUYrcNo4to@Gt&4e`V`9?B`F?q7RO3GXSnF64^ke zCiS!1J%qRY5H%A>046geOy>JAnQLJ(c@R#smulLHj=7P($db0DorYRLXsP6{MB>@0 zgr!V3EzFy$Ws{{U=z3NFOA0n!6c!^3UC4y%Hc{OjI~}S3&3es&88ScZ?FqSL}5z-OThw$&?R_Qz(>UF89 zkI8hV!$mTk*gFH6>166rMNDDqwkibwN!;43Qe*|lph_vJGOGv^BHW4)xXB{`@xI}P zkOu-SQiOBZ)<;r8~(-O%7_CB$cXD zfxB~a5{rbe1(NfG6TsM^{Bcsp{K>K0?c!~$_Ud2FsoM8A|KZmCjk7`-9q!kjtFrx) z=*FtKJ5y&-jY!dDSyhs4t)~3;Uw4k*pv)tn0r)wc#%)Vq!6O zquKCt$9;nzRGKGMpx8J+tJo+Z2a1iMQ@T5_O*@K>wv56gsa+VhEb}B_l2L3#r`6_! z2MQ4X9z%r<#JBDT;T)P}0?zT5rVZ>Q((pEHN(@iWR<*k!o_(R;ZjTCM>R%ueVVW5C z)3*IFDBp6_S_j(1u6zY>zW|RZ$2~{2f)gCHH#Oz`Pw^UKM785B*)fCS1vK*f4GtFZ8~E`4kn&H`=qJ>QY%zxItUP<%Vo9>d&{p3hL%T|# z*_H6!NpPi%1Z5gwGWIkFWOtZ5`HaQUvGFy*`d!Ao$~!w&C3s0q#x3sE9nev> z`M|c-iLumNyPak2c2;Jx(;CY2Dy4VIfFTngaG%kFl=G1K_92swx)b$)K1Q+AC`6Fk z+r>H^9;hXl_&P8*(f@di{?sNKg}=cxS&WoC{=xb9p-~PyV0|@uBCvoqjZ?GlY+#Jv z#sad|w)7>ID}7m3%Lup+%SV550OdbO=A5#Ix^k)t<#li9_CVYGRWhvpOHHn&6Y73q zM}f5?KUPM+OJdr#B)#opY*}~*<9Q~mwJj-O-N?v+7l?6?!w`0+ny%j;zb0r%bYbC( zCH?cHN3XX)wjtO+!_EP#WHw;HWerv(|5lZ}A3;=9v;>$5ge?utp z=pIj`hvkrv8cB!5b?hTPcrl(_Es+QxXSg2|tDhEsjoXFg#B}33tfFFj6UzVJq4Bc# zX%upt=mSDhI#!JvhsM*@yfSHYh7nDuOm9)CBU4*FxHfAZV3y%+jK%VlNQw%M*fZMV z?K`|z7m4*XKATt7`8ZRrx1BH6rgAw~&-emjfv=Ht#nFdojR-3E`H3pjE8DKL_}}HW zAy#bLh(z#jqgQhKxv-P6u7hSeh)Y{7tTv zx$=B&mA#`(d6;YV-NC>B>7dvc1;0Ee^QWXkHhiR#kPvZYT7)rJT--_II!llKmzt$$ z&3pjW6S+}r3V6?r*r$rft<9$m5OhO6)#lbJqN_71qCOxHd8$a>a*|q||NhZ)^N6wo zwiqtAxq-8n-re9jHys9qvpZIqun^kfONZ5ca)5;?LP@2}$IThV<8=HW5P*k(QbbTj z7#75>#g4($W$Fa+Dsq#IL;A0fjLZ308+pU{94)@h3CHRgNN?qge&Cqr&0GA3<4>8l zobMKY)Vvilwd?{U?LcntHE#!T8#8aAfz$YiIpubK%5x&O@Z)9V_!*oN`4vAyuq5!~ z%ZXgfk3T08;%8`1#Lv&LoXEM}Wiu!%1DfE|tQzQy2ZWG)m?287HAz>C*;EZjd@B8O zoi2MR;qXWi5*_gFqYI{0+S%eEA zkG|Pcl#B zJd=fKDPX{B35v_e?^Qfh=tgQ&z$t60oPTJM(=Xe1WqNFO%`)<({^1vPL5oW`P+#JC zAqvVLm7O8?tyyYP1RvVJf3f3(Ry!zyaz}PZ6RzF8xD;^QKSfA~akH;&D)7x_>kepB zW`L1@ZJVOk5!&|>jo&A|cA`+%rqnVZtw!E~KQp|2AP%}}P(wI|I+;T^ZD&S5?>5Jm zP!o7gvWk8_q~Ej;{k*E8kGZSgay%>{M;~dBW{)`*RagDITkRWFt6M;rz>LrdhBU_` z3=&3DKWoDFJM^<1@H*j*ek==nMccaFpd00mB^HEF6j9>Wm&*Fzkx^5$yIw^%5S}Ov z{gHCe%e|FM;arApzz`B7!=i}xcc zjd2_Q?9@x&&E7A1FMB^=OZNVt_p|rUaJHOfaFk%Nb}{#p#CrYFSD9NeLwfOWm6^{N zAOEnOmp>KpEoNfd5E{p1w_ta%=m>p~&lzjDjJNP;)7bohKpjdxskAlv=cPN?cXGfY zF+*-kT`*d4aENwAbh?FAla#hO^A7x_qykq#^e8Gov0rQ2JCj4@#jqXyF8AijBsuC)?gW8iWlxNm1 zrpMwtObdmtcwfloY*$WsA)Qv%Kr)-=zzN*!(;nz6#vmw8A-1bC7QqR;6A1;IU{-77 zhIHIHo}WuAT1!7I@Q%!8)x{kk^zO5G2|FvYY}!XmQ+v#k8!dKk^fVgSrqQl2tZa8b z5!)(z5;|6EbXQja&>}i(k^B^T>z|H^uPR|oTThw;4=R8#_Z=uBpiJR%>@)jQDQ`>7 zSE=^pq9bKZA{C0{+Wje#x1|EAybf}8KT0Xu+hvi3ukGL{3As>it4-&MrJ@Ubv5kd| zU2J}|ALQew%0^+LXrrgX=;nhEIh5X7{BO)Vv0|nc6FnyOpg_E(7XPi>i&N@&7f;ew z?prSpu(r4KXW!)&#nWAKWLWl@lpEAHrK-j@s5p_1b0DqxXGC<;Nr-F0zU zlxsj{O?mVQ9k8`;L5t{BtT0ws1<0 zH=#kFcC0Flpf}UvUz5bq6vy6>j5L37MqSi2S^2&$kRE8Uy&y^BQASeAd7|BNG6?Ma zY&nzM_PDH~hpqOQv{=2)O+(w8&UGuIvTYG95TLbREjiS~HvLb*c4Y7XpqUlEqw^x7bl<=yPE>~ z5oA!in;`g^ZH{jA9+$(mb-%W%O&?|HWQ2@>a$G>4JR~D#AfV&YDW?aDpq@@eMhGF< z7l}Yp0kedQCG{{;i(^;&-mK@L*#)zRSD7Fo$0W+k3y@~SW`$rLEi+|i*+nQde1uC4 zLWmME+E*M%%I8UmJG~$dGO*K@!Lan~B3ZSSUd(xx1yAE-1EO2wY}BI~SKw%z!hWdi z+}4qsVyM0C7?%jVwBAkCLNzo@>7+u532HkAZJkJ4zt6sf3;Sipl+!Wevc+8{ZK&!( zIfhTQgY=ZR>@g3G3svPidX<@_76Xw!CsU$MgGQ3kH$aWyzBW^|DB=Z25waIGo)Abi zcXMPal~FfQg6+os(R4v$=#HVY0#p(8MLUWo|&gc60c08HUk_^BGMP0UMRh zs_8sVqK@?ce$^OfXGf*wmi<67St(|p#OS9|TW8pNRA+dPGUB`zCs zB_@RY$X1w4ya^c^zH0a1`eud?-a_ep1qoYyZMO`2uv8i2vt{U38RCav z!KiB+WRQjMsQf2p^P6q>DKz49Y6UH~vfa0!ml+$>v?7{%1CuQ4yUgmriFDDm=`x0y zrr&f{o8dE=B2%F+Y0XBUEo^5Gw7WcZWR0EEVL}sf-NMKLk3C9l35+85BQC4HM9_S7F9){A&ZmIDI2BYhq&E|7DWB8kY-*p<&$O}8F9<`I>jV!; zBNbU{5<(NE9zWUCHE%uF;`kU~?0>}jF{MFwJ9Wol>z|8VI_nBsDy&UEYlc6fmClws zN4n#%)z__Zci2j?fs(HO6hw5zB9|_^*ZLne%2`Ty=2USR!mNpU=^8d{IW4{|{dr8! zWVIM>-N!QQ_&m+$$mlje={`?_1GXE@v{T>c>$8Q}l*vFk-WU#L7-h-l)H2+!c66=b zd+Cmh9<7{2qHw!IePp+&Xo;qA7KHJZveh7ZoY6|=DClxvca`7T126S3RubOm_aZd1 z1>RS%6|4Mu2f)aBGqb&|5J34GWP=Z5jKTpLEbbQ+bhd98&CO#+9j5HN__M5 zc%d-$dc447@dGA{uO#VH$ItCJe~-whc6=fbAjBr6RN`lew19kowZc_CAl$p{wI=F> zA_`H>p^$y-4LwuHbmEeU90_sHdki6(iAJ&Ez_Lc0XUymY-=)GT7DOB}9x_N2EFyIU*;c5*9c{U|`S+FO18#My!Triylgu}pR=u0X2Cz+0cg z5e!489H5Gm;MuFaiSsAwf&5@{=+(XiyyD&hEqN@fh0@n2%CB8^5IIZgqPsdTl`^yt zx81dSU*tYCZVOS&R(#Sgr>VDdhh6JaX)Q0qAA|z$_{NrYflYVA`NJ*hO>uSd1yE>n48MT z)Z~OumBBw9Z$y->PvwM<7CZ|s9Q~9!$06eyW$wnPtdS^*P?s$b3<5 zxGYFV#O$NWZ52q$%9I5T>Px4LqFi$qM=q^!RPh5GwB(4HR&GKLWNkZW;h&(z(hxqPVCoFyII$fqQpidvEDqIH+`f;6<{Sh7QQ(F8NTY@CgT#&d6Z6mkd>gCV~XB-CS%4>^2{& z3{9kJ>CIM3hCVXM-PQ1zIzcx{@szf8hsU=XQf5`bjpfOf78Y-4#>9kYC!TE6@$NLW z*XJltPL$JKO2x!iFLvtFgvMLWQ$qiY61EeX4pdgQ$XdK5Nh+C9t~(BuNqqsFC?-Ar z+FynErBnatqp;|D7-(f%=qyvxu5Cetn&f!Nq3jA;9I~5L8D|VUB1BM5D}&Y7$7E5X zG8arv#KkBP8rRrLMo@XnWvE&NrFte?0PfDn795En7`mMTq?C-#cXBqbvX(75onGwI z8P^ItbslPF*{Zf5Gg6Dnx@Id&ILt_>1Dpn=gs&>UsdFMO)J3{O2<$nLKJ9cy04LL# zza8xuNz@x-B<}av1={SWV2x;vxSHjJM?EG6Wi3ujMSSS2?RMfPYeK-E_~;mShZWUE zjM^;pm{|tX*vgYtkctyzidGysuWaekLd!W$z+}7%G%{@=BwMyKLld>whjP=(2OCCa zVbf577)JqFCx>ID7|APJcV+xcIejj%Hhq^Je2UB$q%erV4+*FoQMiU7JQi=^x zD7ei-C|RQn-Db@6)OWe?q9y^-VuwN-6}LU>WCgk?L-w_28kuE%RJPewKL|fkIhSV0 zA8TH@-nU~+Yp-hqD5Oo-9IF)6u|5#>IyUpBqO!5CyHs8!mCJ&``uamEU(OLO9jY9r zZ;UeM1So~Q$qHYqZt_mjDrbmZw$_HYlcHzVvm8TGTBLE>Ke-PWsp=Ga#ePJ z-jG%^SrK?ZSA$91Zh2TVW4qR3Ku!Z%Vj9^En zF;9B8k7-0M`9TY7%6_NOAN!Ed6|JUEY*<0-h>M_g#Dzs+^!QWCcPHLQxHLW9kDrG4 zv+%bH5!+k2k33d}yf%?5a9WZX-YrohZdHu@NfpT+T4^mu<7jtl^J)Vg_{%r5 z8oGeKo3kZ3#N-3>gp$Lj1d;;}=lq;xIF~c!_HuxZ=!!VH$8?PyJy(m$Aq)w1P#|F# zG%x~W0`MG?TdO78EXuk4s{2y)c`FYkETa)famL74j!b*auYcm#|AmdHTW4=F_@~O<2WYc)QkJ%O z_p<)dutzxRn3zmv&EWRt#Y7;fqetvsXn)bdqkLqgKTBP{}TtflTG;dM~rf z_rv*4rS?Hu+T#4q#d}NFa+KD6bzaZQMrn)uD7>XUMs%ESCYIxR<6!x2a&U64oL_&( zr@xr;?p0jdQ(k?OUvDzcSdyce%mtD>x(lGnN;Kq9E$Nb9q%1Jgc4HQA{PE38Ur2ZG8gci+HZ zrDeGMy5ZOVU7>SI-q-~UkMw8}s7b|FG@DG7Ip%tHtXXprvz%oQY3XJp6t$SVY-f-~ z#UW18k#JAq4nWC%Q51^K54t1vrUtQ%<*}@Lfh&n#NqB1-n zq~C?gaG0esY(Qm*ElXy27%D?)SSyub85!Vt+t~oCWk>!@8E?1#4xs*4{j~>MsSfF7 ztKC5f7URl-@>5*qyR&oHpe)nc7OK$Lh`$;)8~!hS6EXZK#6`P z11YHi5ydx_)+!3&NU@NHmBQ3iJf;5E%71l&qq+%DA}Gm6Q?ldE(`UyqIYiicc%ESwlNtAeh`yUh2EPcrEWW1tTIDw{2h5b0mA&B zBs&Y4Gnt}MJq3DkZNLyWms9N*ginx3)MlcoLZOYBqBDgW5AZMBJMkCG@PCEye?>o* z|I^|%QeVQ)+6Gh=yO7}mug`SckhNptAB&041hiMjtGYR5gvxGyN{haMT5TmRsF7B%9WmVKwaYblxffld@R48}@Q7MR$7(ws?<+9EH^Uj=GawhHR zW!K;H{J%byoSd99@63CjciwrYFMh~MGnTZ&eag{ccIu}i*u6sKX`~<$SEp}y`o%}) zIzoz6W$-uYnWij~DF`dh^_>egvUC$fQ(a%P86wq)6CIglHUqXGrWCJhUci@5UFxwk zxfhz1nSXBk*^#Lk=Kq7uxegfMpq6Nhw9l-=)IDv}p58xV0!XzgC|fg9fYBKtxFrr} zPWwgVIH>8FbO~22^)6X2sN^3dbQbd6N|kR(INm;c;pYsd6Dj zwt+Z_j?9ZwAA86AO z6zEpZe%T(sBcF{Uc(y)&!$OnI^9xEYniA?Qr*N2f>^elMmRKgLD_y%^#e3+M zbQP{MX1=b%ll_?f7V6sWC=zCoN+EY%N=cIBAT#EC3-}>~&p6Zx>rg^NC8XG-Z!_m8 z>kpbx&VyMdx{@`|(1cZAsC0!bMMr7m7H0E#vq<7xg()(s}AR#1IVsT9c~jD#z?G__&9?X>YW zwr*@s8#iq&$<}Mu@=XYYDwbp|P5eRJoWUQ@Z)m>U2Mhp6-q8$YXn-d0RdqS`gndO` zny{0a7bzc;uy5U?3H$9?gxwS`12dBsk;S)q2F9-$@=mj0Chz3zki7q;b4%r&7uK~M zm-xC~r>DA)IB3R_*%s?Tgsz4hVg4hOpV#1^S;jAP+E|UWeJ0kw!!$`1B;cC#?YZ1v z7Q_$tGuO6h{{Io-0<|V0d0OU(SGSAOBVPBz*oh)uCjF-Ae`~#q5cQ|2c-M=0AcZjA z#q5<9q2dO&@pw-s&22KpBaL{RAl_34zO&E^HcR!MaO6DZ0(o);g<+v^5gn6h-&Op_ zj_5O6$Z~7)K-!@Yc@dRzv=dF9u!1Q%LkVS@qL-me`Z}!7RU)k=#7n4#(spGF+3!$; z{rY0QCgi`@Mc$y0|3Fqu8q!r6J(!`&KKocVbzkCFvy5nNgYL$Zve$Wxaq6!b@+C!( z6O#76c#G7ipEPB3R~BW|ocTHS(^=`8#s8qhRi2}G{1nngd*io!jX^}&dNM7z^Oa@L z*71&qLy3iG@X|j_o z>!NNlBk0QP0Yg-80%sS|jOVdjPR|73iPI>XQwZiJ5ok){=4(;yDSML@Csu+~2nM^n zDbGXd-Jaj%Ubv#o0+(pb++Ex7@`VvCjPbXr}`nBXXMIA}hAx)U^;=Gcj6#ZGg2 z`R_m4?IlGkFb8fMsH~v%2#*b+eR7gu)TS^A zNe+c({^O%i((%nsBGVni%vsZV%qjPuQjf^nu zQE@_&o_T4vLRvNzKUJjfAbm{FYCHY%*vuhIYB9WOT0JHl4{hK$?uis)`|$(9Vv|^3 zM_7M3(KcA09r}&2egt)((R^2ULQP@4gi(byxguCc=&wP%v)S>R^fFbOn94JX>xu+Y z96>JvBXLjKR2L~t9O2wEd32BF(epMq;o&Xd(E?QHfwLn;>S#9c`~ke9p3Kx1Wh71! z4LnWXV&FU$KBAu7c$)F(ZoCU$$ow70c7JInJXGI78rdjtAe^F@bflOhQ_zY{?2s3? zQjJ*p8UZdcL}K6vZWjO-qh;7G74llVlWo}cAy2mtd0JeBJgQ9~ceD*T{9}O%dDCs# z$1HLQ#n_Ia6`Q0czZIEoG@FTB+a|#Cn+Lp31-|9h>?5~N?LVUx%g9B1CM)-0mcWL6 zGkZr6M}|mgab$5_qHcJzxglh88FL!}w zqynme3^n-IJ#^Mq$ObrVANY4S+Ximd-{aZjNo+jq%hfF+ z;3B#5MW<={yRkB7_96c`UNCGS;XP#qz3NkPivr5c z$mRDGJQm6efss6Wq!{4U){UM3p#7dJAfbm%NJnUSriRLS8gCeeC(#b|CU)*)lm zniSapT$m_lVjSD5Wef*y9x_;74bSK5LB?>rJ!6#Cp0TiVoCU)|aP_$)mxbsFn_^ec zL-DCdkKiP@7$j)rz#p^HTG*2~Ta%C?pQ8t@1bMtoko7pr6GAz`L{HJKXQ3h}x6+dm zG5K-}D)tSV(h)&pm-OT^=%@CsylPj+brf{E?0Y=aghNgdK3;#fRl3T%)WQR~dKZzR zX+BD1Z2~z54%*&Dz^ieMc7SAN#*ViLgtYhJ((td`=b4E>Z9b2Z-RD^yp3 z&fVSPjcmgqi`DMMGVaihKJ0(Y(bx-R0((=Lz}=F=G08M-74p~ZM7-E=r!RUXbOsK% zgzKfByW88N?DjcF;N0D9`YDSO*eQ!X+95Nh60`_!#}SuKVl`HFBKYYg%^Rv5Mna@AI5kfjK!ZaNa=@Mu=B z0N0IJL8kdI1DXzX5%0OqY6aWCYrF&d7;Mn0D#5H^t54=?SYQiWc#C0I9@^4~T|vNu zn}AgO5A3;3!LxXNU^CY{2ZI!1>u%ctzxyg%W7Ajp*Mh8KkeWkbE^j8Z;r|(J0V#AN z&OrcWEwip;G+zN_p+swmLNHHS!B8ZEyQ0`*p|9(!!3L>x2!01`DAGWNcgbcZ0@m|; zY}ETzqY2Ec8#bNN^y4d;S!eY@beGYEj%h{Au0$Zi@HntJ5wZ6zI3;KmO8Cl%z2A*B zA2Qikrp-bL+r+=VnZ#GpL6YZda&&w(mGEA$e!rTpuZLPhwvX(R4U{6!i70i%*PK!V zj8ysGN}kqUX<=@WPH#(jy2c7pC{MIxx3A^$^y?Ltk%{Gr7IQ$HS%?w%mbj!RmdVnB z_3*f*(pS+hqSuXIQi_3#dEWN+hoC*S4~kLEC30hvS{8M#F^G0js*)GB_cydTgHBoEh2p z2R0kEK_8}!ve}3G^%=rdpd~~1qnLo0h$;*?h>(0ozyj0c-w={{z~Ko~z<~jzy)Lao z`A>ceXd%j1@=7EB#88C*JL>UCV+t;0;OSO?9l@pCqIICLc3@H8K{c+NlL}SD_Dz=- zJ>9-3?mfZ^tdkBbkAPtl^WA)C6i62iP3RMd$oTRl7F?Qi7(wHQGamvSwwhS=dK0tQ zhT^gZg|8Ds<;;N!V~Q(+q03Nf@z)TCGmMP={4}%vT1{wdf&M!3QVWi<>aW(SlUIu^ zu!Ou_-ziO^s1DJc4X8*T2wCSFPsV70G;OJfOa#kE57(1BB}LXl zH?{zy(=uTQ<-)vt!Jyp;XhMwI9$be^z~aH3#lZc_!nMtoh!=)rAW%3si>oxFIj)kB zay>EuiwAcd8ywY{XaVKkAKaqBy_U^Pi4?hTaQ;ldLRlcE%#p9kLQ9>pEpCfN{4Y9X zldRAn!>YvPw3SoV)gBbxDSM7PWi-pgIaKHn%_x7jrg`~7W`C@u^T~Ul=9%gJAI&G7 zR(L`&YLofo6JE>UgusOJ$&o0C0a0$P6Y3gfvkz@JpX`2-1*SbE+4}k98y8wY3sK%? z^T~l$fLT>ntLKwz2U$k(|iXb~oM*zm3h5(TVCPu*63$!;W6^hC^VqRntLA@Ro0-9Pyt?SwZ z@^`33ZEO31AJx27qJL{5ddtUryIshLGV%Q$ZL!;F&j6d_MNw>aXfAQ}BKX*>?gf#A zb`YF_B@mR}Rq=6Gn^58i=tNtTki!XW|4Yj=w_heTWwVx0A$9D(a6t7b=!0d%?SNv6 zE3&Z^#_ zcEn<;g*8ueO+#~}(g$EmNykrK-h%yoSQa07Br_Vz?Om7(BH<7Io_H^30 zmY$jnjULR978Edmy;}|NP+I`WyfA=Ev(ex72%kB})(Bx$7(kTg6{FNP@q1YTiij^Q zI3ATgPGUeewwmJ>o^2VW0O)WW(g2_x0kpMqqM=rRBF2H)q`*9o>R8kj|Ip3?&1~-Z zg*dr}Vc_~~Xtz!0UFTUaAnZ_r(|H#W=PR^$M=`FJOLsr{yw!#Y`qX|a( z_r8)Gk_bME&-hUYInv4@9sE2V=hU~GeB+2%@I0g>RX4nc2%$qiZ-TepUu)gDvFXMu zUey~{a6mzxFSRCAo~Qz^%Hw8JALZ~eBoS?Ai97L2uziXHIW6Ga<5hNL0_Z{=S1sY4 zFVn`Y?eUivspID9_%sV^b&-M9Fi#dI)a0Y^xhHcN%sbCf$)gSCeE|`0lM*xLeMDcr zRkUqp8y~}FS%xiw>vc(Yk-%t@-U||=N_q_%pu;oJ0BQK3w(EBro^QILZ(cGQ zQW@}dyofg0k-#SL(>s!;a$YpvS4(H!Wd>>{rO3dDN%?kEKuQt*0?}#66;by&60HeA z)IXZUPxt|<$+Yt)J>5}OMyu(LbWpGT#M5kriUMbnRm?a8HBHZ$xBsXWwb}!8%ZoF8 zaR%OQUU4SBvXA!Ofpzq9!PnW^R+w$rS5O}^hn*&MI19QKa^(mf2Nz2hJ*xJA8bb67 zE(;)ham}QD1k*s%+d1=TdRq!=0)*}SW%K;@;Avegy-C)xp5RmW#+3%a#-bZ?=BG+c^Chco=x z=!RtjCkjdkk?G0=XA(m~rjhVf#UOrKlx2Xn7i!m_g|q<*S36#%g<7onFrZ`cN|x!0 zc1FzEqUp*w0%bWBrVuhhr^5JZI*_>dYKCGPF$0i3Rq2BYE4HR8Ld0%AHDj1*g3g9@ zAvBs$6l~*iS&s}LLR|JGT=rIRiM0+fP?5HVd;bGXBpm1z*5@?jT6K}vnT3Y7@!1oWB!f$Z z_+;A1aVW=U)_{j?;h4{CL)z#>!hus@NguT+Vfj)k2oZOx3(QbQoiQyiHV^rt!{N&D z%|kwAIJQd<7EswfAi0mvzI_LM9O9OAEF2 zWF zG*%FUSYF?RT#7I8`~Jiujl6CR@komtmz~(ykl~Vv`e-;Vm%d$|W}u(x!vIRP zRSMc-{eFz6pSGyy&)?h3p8w@}TP~L?jqcd&O~>Z>bGqK`eUkDEI4KB66dYxw*!frn zDWu4OriQ-y5p}xIdK3Mbm9Ir4l&NUw?iMr3-S(j9Cc0iT(N}ijCc5Cc*2W)c0>XH; znfCc{D~~r4ecYT*IwNPqw#$8r6`t7T9*PJ+15u=vJJjAj+9C=QOPYa-I*iv{K?}KJRNVWqVebZHo1EC@ ziYovpL(_`6g5p948U9zKsUj2W+x9ZHpjKA~P?3=hSB_->FV6U&Rz52+_^h>L{~3#E8RKl6 z?58|s%jr0~)#|04wP)GMo?>KQoQ>CPlRb8b1sx*wqLDr8PIKF2Ki&$^4%wwh>)ov9 zJ6pz@o%FzO%lz>R>_O4pEC-xZR{7vQEGDta2lJl9h3)lSwH~)8+BbK^vq&*&NQF*i zOa9Ue%4{lr<%zN~i0-PLI0gMXr$_0#X*fMdm5svKbmEql-dO(U#vi;I1$~7_fEK%Q#{M$w}5~wfB&|vz%gEh>;;FGGDGCy?}E8 zhOqT_G?3*yG$gs9`X`?kigMh9h39_7%rs-9Kp%^vvh6f{WVN^@MyYMqz6e$;1CWTd z!#jCF=j%;_vCYeytYj1MGB+F)GB2Bjp_=l!kb$k2ufsL6i1_&1K%;yDDrSs7yGCi? zVB0{WjIn|hq1}c?u`S=h)qGyUih;m`CqIYjK0=;Gd#_8py!7OuqclZy+}zjnu0G$fTS?1T$~ zr9P>`O8g!7Q6M|<##j8a|5oj!;KX4|jZ=iNq>BRD?j0*-9$)jx*uI5ykah$*=S%q4nKybTOC zW~X{A18tSa1o*35!0#ab6P{*a+f)q(i)Tn%c2kA?3=a4ga9K-C6=|{G%2bWEsxsmN zTE%CkiWK_7nbbdTCDSKJ8`cZoo6L!A)IJUowu4$$IcP&W2U96`;H5T!e#3S4ptD*n zP_X105k8pb%v6dGHBL`Qjnj$Sm}dDIoYH4g;!^~rRSD}&JpQgTvH5W(R_QuNs8E`( zZ&1p9jvSqopSoOAImS0#<9OR+c>(*01R5^U1HS?6Z`ZlGx!F7S2!7KvS$Hue-D9pc zV+amRKZt*{Q_}AlV_bg`F|OxB0cp>i7&WeYJ#AdS{i1Pw%|N-o^|9aCidC+z$t&3J0?QFq;zA9WW1V0X*9U6~s3ozf+`qb_(`n6VfI8ycs23P%> z-tHg%sa?abr(+&=VUjM*xbqq)m6*o~hw#$8#AEp8u3;eEdpt!~7fO-N#emfZ z{}{F@F%NVAI-i6U(tCUNOnnp+-!k3bu-NqF`eph<;|$C9=C||+BT`~8Ym;B!{x{?P z?iY;fqF0UU)fdpUim@99o4(At$n?brr5ODZe{W0K+@Q>c? z!#*1QgSBcG@4C+P+kVF8D*WF+rVUT$m$~4k#KG4s_v^}W|6DMS4&_v%i_GBuc|U%v zpakeN?Wa!+%NH?oFpsfBTf|VP{E{7$fapMu1L1rE-0B!gHFz`wsL;9G>0}n@6+F)1 zw$}drFxmoF=vp*xf#B@KcYQ?`DA`+OBSyQc$O~$Ob_d}o!&!n<@pHFYG$TCB>K%!u z1jdZ;-iHA7e={TO0j-rm*6cGv)nROd8R5UIEG*)twww{t2H}j6{%>Z40?84P-!voq zhbBC&J-zF_QI;`_(2N;jpGvU#Xs|iyF!;D84~`N<=6~UIB>R~q=NcwCEO z-m-U@g(5H^H2c2ml6fM+o0;c0rYx09r4XOC8 zsJsL%G*B~aT?|);X`}$dt0S`w9j~{}XLv1C@hU|=qcOH_j#1m&-sqS?QKxUA7OBGV zR!AaQFjV1f57HESTkv>VNkO>)Ka~s6^0V=UY6h_QSgQ@(G;7y{va++CM+wa$0#ncR z^EkCdfYtv3E~(5GEts@H$nIpQ;|#U+zfjP0-ev|^5jJcnXxo9)epZko-eBodZLcj_XkW=;A(d=s#g_qp_ckd^+n7c9=Q zx@RIWlolMyLAHTw_HV17Bm!we@@)s}eO8c7$|2*2)&}cqLB0$HAYu)5Q^kX`Fr^29 z+h#)5&u@V(!ZUm`o!fvWlQV%S%?UUytk0&TOLHc!I{7 zW^0|zi`ib&w6p(&1FCL^8JB~f=|u9AzREuHbrO2Sk%A|X$uGz}&Pk32;Ht_vS2qTNHQP0Vd_3Ckxa`a-|Kadq%D}&L(sJTr&F`L5SO*|BSaGuerQS-#0X46!$iH4%H z$t!O1A#(8=f2i?&YfZXMfyfU1l+J*THlGrJSLH2eTmy1-6C+_Td{1Ij;!(B!4Rd+H zr8lGGC*!adsqcVnkrR=Oa`jESh#1;7Q4mfl-HQcZ;*_FEh!~yZf?BVHD;c$O9+`fA zQm92$m*mrkH`BJu(6owg_iLwDU2=~`UeCV~vZc&dHt)(bDfi7KlY*L^4bIRxEM4pw z;8>V6shgEzJyMtqQqE(yiPQ!!#djN^H2StQ<6-Kk9&4mfj%dez*-*;}P4aH3?yw!r zvP-T6zY0DX$;ib$n%ytc-RjY95cKimm*aK6}y?pu!)RM|8X6ZjElCiH(jS?Fd0p=Or;bl0aL5X-ax!WSj7Ygo^v^IDoVOdD8c8gu6V;$Xe_)UpQrEWn4}kU zqkHSKO;Lcz>IBkBEt(HVk<~yV^X;3t|1o%s1xw^DS?2_8UL+;;G9^ozHWer<=R^l-Pzx$#YSK$}@?#sdb=nGht*co+Er*A`e11dl;Q zkWr3YT0k2%S&^7lZrI$>j9rSA=!vmm(~7IwzY;3=uKWXOsNl6535N{1YIWG+VpaUs zq&;lHn{9`9x^);rVz;8O&WTnKA_+I_?Azl=Q8nRD7|CLqg2O&=Zyr-n zt>-N1sAg~$tMt%H&U*Gp3qVukp8OJHqe~s*EX*{sNa4M6n#Wmt0&T`wXIqCM<}8M@ z7S#_}dxQm3jdRwO*EhvkZJ zt=-JN{dX2%SvhzY<6zbop&gk&o8e&=bYOhWbp|(Q`pBdoGxcQmOIqP0A9t>05REg} z{%g(tRh9`(YrRId6}2Kdq7YhE!+XOMhT&~JV|6&pf+kUi+J>>7f~Ly|jb>%6O2$}) zDqAoYB+Ws&`p;%vV4aIiX^RlbGu94^u){+r*-hG8j}ysQkWA=HJ;r`t(MG!BLioHH zSQd4mL+|Xgqa;isr33QF_i}5?5?NzqwnTnnadL$RFqHK)^Q?1=Kl7@w9VaJ^&|GTZ^!=jK?fvy z@Ipj0K7@e66l)txMa9msv2>_q$;R7ReUGZ04`rtlnkL-7@KApA3GHvckflgJJPVNM zKNB?JEKCILbGD5Yy)>YiIGmvIZRS<#l-sZD6->F6M?ieVJ5T?W=t8q2(v+b7vwE$VhJYqw34ZtAvan>jXx0#n$1Edr^nsHLq&i9l8$;Lb2?V9FGN zCy>VO>tz@r?Y?$boQNw6R$RCl9~C8>Eys`X^G7lCRdU9mdW7P>+NSDAAS0u%BC4XA z4F~x#IwS^}B@@odwp#!o1Efhf2|a1s;Xx3rtn1QY8_XZ=fzcA9_Qt=y9Jp;XF^Z$$ z>#QiSjrAApVLeuwyRV6;q?+7hID%jRUYoX#Y1`4`p;lB(` zgn}1spoy-rg3PLk>d+UiiO6{s6aRyUiTF$t%`3)eC>N0Q^vJ9GmkdpeM;Z>j=>jc`xw8b!9>o1r=@L4 zGPSP7N8`7YGW9a6O$JQIK-)pLwv~*bdp=%j6X^a^?Llu8-9T3=e#BftcjA2X4Cw9m ziH_{V!nN9#zQp0!X{>HUJ=fUO82(^~*A&(6n zsj*zKYTs2tC{hb2kWTLdBiYKHJ!ZADqMlW4QFS_L8!<@RI{kPnND-a*QZ2EA6p^z+ zwQbs8w%Xb3ru`rXi{$1kgSBl=c>a9alq|bBVLO{>ygZ9u#B#Q0I18+bHLG8-3+9XY z6%5%F%oUT^Hop(B0vB`D@0hqFi(WKV+Z;v9;Tc9m$Wg3%7qcL9X^d@Qu#Y;y0$NC4 zV_%+W%B>k}wl8n}^G?jJcO=g-YfZL$v4U^LGrg$W;;$Y6c+JJ*8}US#w9T$t5M0T? zq;NRKM!c44>&aF~BAOZ6daIXWgiUV5Lw{PUt&6N(6LD`i;k4*!C>a(a@!n5#!8RO=liLuo|ztkUiP@1*t~oM9|@Fv74=_ zrPIdpwrsfpe2;)VIT_lcHF7cn$rKqB&n_p}Ahtm}5aUp&VOq-Sh#X$&q!I{4Gx9;z zbM4i$rI!Pu`Alfh3YGXw=;eqdT8{U|6iv$tWk-j%qhq9Km11LUi`(fLKQ(62s~eKt|0iYJ!4m&*9=k-YWcqP1WQz*?edtg#LHx0MN8h0Jes}mms?~Nl8VbZh#mLiXY!UwqU({<^#D4;*3cl!}Y*oF3 zT;s}1(~e$a37asviY<&<)Wt>p|8)lBsbK^+Z}wh`*ayI)ka#X$sJ5(tix%eXWQ1Go~DA z3@U=i^d5uQF)Kvd96CJ{qL4DGzGFZiXKG$YEY#iew{XhPtJ;pB#V3)vV=r8v{(?!4 zM9NM`iA|V-r{N_{&v`S{9D|x`i0kz-bD>>r5;`lPGJtQjWrp8h@sAQYqVmlu77EpK>LP z%(N---#yuY>KWL!e?RLE-5r67<$>pX(d+VYU5M*hs4kApxmA>Ig{g1yuvu(&75yFZ z0j1KHAOZf^#C%!7j4L`g&+pttTcMJDj1Hg-*mj??$FJ;^l`rB?ZRiDEx5wxF(&zjt zpzQQ32mBX=Dkr_>Q#J=;cRJnDf)lae6lp^oo6WOE%i3Pau#XLpz zXa`tv<6(Lk9Xyb@n7uz9?G454D^L){l`rQ2#;bU#BzQD|>`^N#LvhT*&;qpYNF0Gz z7!srkACI5_rCb zv8Y{*Uug(LZ_f9HSL_cc_^cU*kRX~yIGuG_j{4Axz&wACEpqHnSj3$sSAAcIY+YqD z01}k7hv#D44WNu1JuX2cm#gAk<#5&1aD73@BTwJQ3c)^J>8R|IaF^v4$*Ca>N%$p& zr=^FHDF@}TB0-~I{oOOSWAK!sy>d+zQVmndqHz5&54hdcxkYh2R*peC5=g>U$A+g+ zPbcLr^Av%oANmzS;dwq}|*B?E(t2{@Jb@kQtb4Uxi zd?X~!NshF zT*Ato=pe}n%6;W0e+T|8E>PC&{VZo0JG40SE55lLEagRP->SurTv$y)$UHvRnKN&0Ic@h?SFOPrHzhIt)j}(>QB2}fx zvKu7}Cn&O?3KbS&5*SXklb)zz`zYletNZN14JV0&LzcX&W##yla&&fg;wfe1N)$N? zuI!z7du~HYi%&$0^FT4>(u16~Qt88B!ac46pg_(K)`3z$0+IC6`s9~5UV$}5IWjk+ z5$H?8ACTZqjV!`Ln@Jrd6PMsOO1i%G&-gUGa}M1XzHtnGao2d+2?&YvSO$w)TDgK9 zO~6xI9!F{gxB~tTq6Va76Th%D82;oqb6>rmzYQwC$HM=HejGW+uo*00Cv(+Oy~{V>>;s_;PGOzvFcH zhELtN|v?id^;++Z| z({tX_FCSQ}U*5PxzZ|)g`pyw~<-vv&%6*l|TF6J))nxhf4y>LVHfC$((=+2x!V`!( z+Z`8+LUm5-)bz?4SGzKVofB_tB&lG1_bFdP8C51$xQyYvG(f)&FRq2$!jPYNK6v9O z;|I<#7iIcv4)%OxK+sQgbhfl6>B-U1+%48`m8%U@QQ-g>~? z#4h%Q5x)P5 zPx?FUFZ}PQry5f9r+uG1hhN`=&vE$cXZlUMN6%{SWqyvuZ`xnxZ~yl_JKp~Ph?@(+ zD?{+7ebP1k4N(6?IMJTfKL1~O=VQprRru3B>6-o&$j}w4oQcNNoO=h+9{tU?(cW0W zGn$;QZD>f*UzH=p{>y03I!;U484dAS_^VS*gJ zuCV-L#2eVO9fjZ!ZQA2es;hS9;*ewap2|Y^QpDk~%Is;lI6UwGDhZyAhXTq+hzsO< zrG?jD?04>#mDm)tfr6DKe&NN>kf~C=pkYu{iJ+Xcj++iT+Ekc z1jx#x^2q3w69%l42Cq}F-8d>EsIe+|k*qveD@Ugkrq)qxA$bnknMdv5bFTVX4v4Af zunB`oo}A;Tpns&nD{+PswtXNp<0_0^B6|jG@koQW42g9qQUWV3j-Gpf`fv<>Mc6TN zHw{}kAjcNdRqC^(WPFR?K){qQ`mFK{sFOxi`IIpQ;ra%jj z=tcBy`}jK#(FAoWh?NSSV1$r_@u8`C{GDn19mIr?-7;P}$pZ|F;z?8U`ST#>*X*8$Lf`B3Z6xAo9NXj%sDO3L8os{E|kLq`#D2fI9&>zPuD-NRzBr3$N>;*Kp#H~cm@7cyyi@i zW5?$NlQ=LtXJ&_({7|3uCHr#y(%_#4K86m?40Wb#vrfM_9Le*fg+sL$Ju{0s&=0$Q z2J@C2oDw<)1@!_wC+7!pCiljfu)63ZyMQy4gOCKuPpF44D?9vBH_8)TZ7bW|qNVAuD^0tN$4Ia@Oi)g-{SLXX;!Ol6! zGt4bIO7=ZF@i;0oe^kl7zfV5QUERT%_B)3c?~ASj*u+1}$_8Q+)x-$+(-S?*8`&X6 z=H_Aq$|uUtQ0i`FuN#^IX5FJKorR$(ySh0V9F9)4!EwrlZsad2UrgUxkI(S_LMier zjowJUjTLXk#*Og)4ihEsfVxm;cevgqJu(ac*j|%&(5|<%QYxde>2N4qi%!G)lBYIY z-!1Vc`VlW5I9+<|NO}VgDqW~=ynXx(?ZUTV_E`^|63t;*3sPxL2dqEVIHZEuC7Z+h zoRcpqk=qrZsl*zvb-4cbL2tOehg5nH4G@6(?ownve!<~|aA%|l=__g&3d@n$jDNz* zznUqx3mJkCE$W76C2y@#8?LM)Vug+g*LRd=+=rj#*pU@zTOODDknF5Y z)v+JO@*hgfKLDmj`A$|=dz32b{C4mXq2OFRo45o|dZTADCOj24P@ZBmTOW&ETBshj zIr$K1vplHf;=JSlzw&{of&~@sz|J3f8;2#pAH8!l+^)Prbl(?#AA#|W_=+$1TI0=k z6f!`)eX-&2Eh@3pv(m5hz)QVpQ@g~nS9vYbc6uN5a^%UrS^983^?~X>7*#YdAeg*L zf)5%voY7IA>|I8ZRgNAwmYjww$+K(vR=D-hjeGTtOd}7bQbb>Dqa~8Xf1!F{gtNck z1~Mv4Rlxb_5R8e)090*3UCvb}frdnCyyjTs!ats<_Y-1^s{x!f^f9_tB0GC~OHq|6 zuu`Hj_aqtg7GO9Q5&NQ5r7nKD_Rb9aQ0-8XQ@zrHRs30)>Mj9k$tvwN@Kt#dkLNr}Je_x!lT>;m+uTd3 z(_YDo4U4IZrcFbqJW4~K^(x=p1>vVQG&!JQk`nPM^@JK1WQw7N#JbwC7ud-+A;hEX z*B?Dndo;!#JtT1pw7bg1rT2iA3EHWqzRVD*^&xqH_krpUc%v_qcBS;)ZAeusr$tZ9 ztK#7gaOSL5K7?ng(V4T84>wq_pF7$iu@`_uvhXjo!!y>d055{~P-!PEgLgQVgtqB9 zYZJ89oW1M4(KlI-SW5AZ^z^wboib$<_q28<*rUmg>$kt@xXQKYHeQ{LydZkEQwJm>+ldMEkL00oxCs?DX%*euk@`3paF@W-P&-fbxNi|6}bp;fp-3%RJdxmD&6aLjQh@SgaUO06@+@gLBcHmK2_RYBvDN>vTw00iaW%KY*M5iOZ3KyQFuY zbNZU`f?v8D?sQ@gv=SkHNg*0e9>Fdt;~?3IUD9M8ORE@&kEpT5eOa;l^7y3%41%24 zjf7G6o)s=BLXi>gfGR116mwJemoc>pa>PH{ud18}@D3U2w_qr|r8^|$CENhxz@JOk z#_{-5+B-5Hfi_P35uZM3$uj?d+Tia&8E2?SCFt>tLSF(n(en&+y960KAkix7kF;dD zAG5$x=rRna4jdqr!f%B0Qjbig1g`LU=y1QX!Srf`aLussykuB64I2}?c3q@cy{D5(wxz##CAHdv#>F}P&m92K%rY%0pv0}}VOEb#Bphk~2;v0bsoz6f-C>4bG zTY79Nxh9x`D+g3KTNAr+>m3S%fx7LGq{tBb0p3W*QYqyK8R#fJL_ap1++YJXxk-G0 zUt%B_kVjdgdwI11=t{EDGF z$k+8py_KY(6Te`TcvEG#&?SCllg8JKc97-x^1bL6IXDy1P&UH7PFU5?LHZEieB&4o zM=r#*sM*`KW{+dd-eTehEg4msF)58EPvBcX`4sbQmTlov4w?@g+76;~lP1_7gLp+i z`JQ&k$Smz573%CMyPKKUWDbm6wc}NfQtSjzCEiCn0p+VKP^LEtC259olMdxt#*m{J zHqs=1FriMDPZL8{q>1Mb^iAb=<~RC@@zy1dq1V*`jAjGKMHh)B$OsYtK&QK>uPg!W z{o@ev&_wemI9A)iBaF85F-NO*#Bg+$1O|{Ii}4)_FH^%U)SfS8&ntM=8|{~PoSq&> zYEFv$9gLer1>C2--JQKHCiy#QDxj7u)_|(u>43x}kn1K@{`#W^5|=+>^!0ew#6^Z= zldEnp=co84O4ymBy-srkBQUnTO%>R=*&Mu$Ana}w>)exFSN3U7^K60c2k$VrX2 z`;i-l7r?2dIQ=iMGI+jkTosdL7F6=X&|FR)#&7}YCnI#{apog!GB5EW;02IrX7PsN zkM36SI|x9k9T7I+6q>^iIv7CA&dI}sTpiLo^i3>GrvpNEWYX}=s3gXabHZ$#4ossA z;Kh2{{tX6P#RNCQ-b`j%CCh$H*c*auG6hoU@$^EfGQmD|8`fY}4CC-fMw|i?#F3^nmaIWh=x!6HmoC zWG#SR?#LO^GY=dD=?RWwl9O10kcd@ef){7N)5JxWd@eB_1)~4LFEpv-2HB&?v}twk zG7KzvKI}`fubL{D40xmG79~&9lKql{(05ANWK%3Q)$+noIR=Tfm<@W^s)T9wu$*W2 zB|B;pS~j-i=d;d439v`-_ay!f;_p~AFbaP+;cq7X-ozhe>#o3GTD<#;%h}=Od^=ZTJY`5Tc- zsm4zTnjz*r2{E&wc?EPAt6jL=-B$x6${L^IQxGeQU4pecHD1;SFLY-zkv&w_(+W1o z-%*h6JS5Hjff{7gcd-RWEZXknh{V+nYy6+BS5N1cM;{Uz~s^qzZvsBn6*b=1~0mmWy52+pW?P7(4)4`s${pcczwzK zlr+1v>pf@%`zSj42CS4yXX9CE!4qAn>5~2Jf)|wRcZNQrI}_>7zuD7HXcfn%k`LOK zJD5DtW+~sc(mCc40{e@gCs62NvohG-lbkT#j{t*GD&ZduBeuhU%HAV&r%OBUmp? z)nGNKqdZ`*6e9+a7F^O0-j_3RyT`f3GhpMy&FIK&DR2Ko@Kapnc>BX(?MH0B#@qjU z>4{2D9@Z&8_x4`~oaHS;tZrkJjaTy2DC~mLB9edgMquz5ZsaJ#mp{t!!}&!jU5~y7 z#_c5pP`CX(c43W-;ebdiEhufz2F8&sk7G?^jPKLKa*rxJz{Ut_6ytfk_)kVVQ2GK~Sc~cFXPiEYCga}k(JpifG=G%6G(G(#@*=sAYvxOuaR<2< zy6Jor-@x-_{{mllVzSe{7#&Nwm*O_tY7fid=#zq~J^Cly-FOxAU~&rRQ44B>TJ2ihsDJAs1M=(4k;p$F;^nQyh#0E)4ZjKS!)N&ZbPI5 zYLV?%fnE$K!JgCVY_6$rvK&CGI_vHlggz9=VR&h z_zUF$8z&{PgXzNLx8$Wq7ZVeQ7n4jnrrr;MU^286UsKRE`Lo>0=Rh%5AfQ@S2ggFc z1b?Jj@4=IO<32Za2YR9}y{fD}zhENPY4#`IFX``eD{CiLx>;+3 zV9M0MIDgSK(Ty+M#Pahb1cKawlBO&(=mym*k)!FU3@yEegslswHX$OT?ZFr#N8h_M05 zGGt+l(BN_!Ozx@Z%{V65rZI6^uz2U9u6T)pqDX$AORO#wV>d@?6ODqAjD=}00xOoE zLidJcE_q2aJSXFa*fo6FD{&`%i(1b>p3sx-Lplv}s=0E^iBnJ8#2U0KXET%RSEyI9 zVNQ9D3AH$3gY7~gdZ_)TOSRwIX?jO-WgLKUo9Qj9R!A!}FY0gk@9p*X0`wQFI_e>J z44u3~mGKG$t*9qwn|h-4A9AhrpDxjV_Z2|=Y3cy{%Dde`e`=TXl74ueN~8F*y_n7n z-N~FH@~5zGGgh20SOXNEgWS-Ajczoj#%P+{lM$l@KSpF>41|_r{7P?Gd5FHj zwOBb`s`jqFQ;x<+l->QYx$zAW?NERbZ5|p%h_X7P?=O0() z>r`nV0}CZIKth+cjr`s%2o-*dA-k0|-ag;CV?$H!NVQa2Ot;v23!vaY2r?#8WI68I z1(pe^3m~x`PemgbGmS>6MZY`MD(hIUWkjL{y{3kUbG0rnuS1syutuz0|6q59=VoyI zIi&Gbku_-)CX0=UtbYSRN*CGfK&?PziT71;P4+kDNB=R;kN!!Hqp}=THNYd7_lyCL z49P3RxZ#x`3+YF>21CZTnj!fP7X#Bo}QG+9{*IaR8vw&ZuJQkGS1 zE$FlwJm0C-Kh7kmnX*$0mxbOQfGH)D^j#ihHnQnu(2F#P7U{*;(NKb1BG%f)Ad|B45H<^FirqMKWOnRo z-mw-k-3fSG#SG}btHt!MKgBk?y-TQL?6$AP;7$a$WT*i#yTLNAzI$7>_d_O_<4lqy zs_`L|q`uan!L3y#i65amGw@-V+&*2NZU;Vh&;VNmR6f-*z{Y?A)}9u_y8Yy4!SX5x zJw0EdAc5z6PD>hUs>R?ZG!MVv|M)A|#I8-9;X}dmxB(PlGh)^GZHMow^Sl2mJj|V6 zWDeoJNd>pS0lxGk3%1DZAs5l&u>a^|?{%%)IWCDmXUb?FT zfgNk&b=$yhw+=27STsgZU^ocv2x2o>k?W57>H@!0dlo@G+Scs#L$k`ge{hf}UF zj&YT}%eq<v{Y4WGlyX5Wqvj05X+gk6JBy4+r%$1alB@wX0T z&%coVygv4T@%%lana%xHL|a5IM!kZlC;N$77+`H7EB4S;zp}Ux%}J3?C(sCoWKJO| zYw`i^swK}B!P^LL1$C9_RiDz)uiTI5?=a?!`ocA+57QBtK(^#COkr{e06fu4G*8s8 zAQAI^c%nn5bTwgDEI4Zbv}k7Q%7LI!j$wloU+;q zNIl=Rl5i1ympKD1@^wD6_QisC=Iao+N&7ryH+=|@EmO?5Sz%eY#AFQ!4f{}vqw#aQ zsW+`u6JH-^p+_bTn3~vvod-Wqp^|{|BT_3_GD-zGo$hiPhr5E9=GL6}3Y6r6)}$vr z${zL@<+hTlb5~Hyx3-Hv$DaYgRn0@SSVDK=>#gAH;2Ij%SQB&UqG)pTh0Hb9isa0} z=xWFWyuk#V4t;GI@SRO#QU{)nOA-JPE~nriOA{{XF$*q7@@KN(GWkJ^hx7Yp3`dO1 z;m>|Y+l0lSz{PH*&rx%f z1)k97p!$T&=V)b+?@F8SJ_fuvGz8E8AuXcizr**6A9f5gPejpH_UC9TzJ=rON#iG# z`|wugAkxH^z_(JjzGy{9raEG}6)UcqPo&AX7MN@g?xdcyG%(qdcYy*gSamf5FHHm{ zHO0(aLe0juNF~2}q=f}DaiB|blr7zsaid`J@n*916~o7i{Lg*7{YO|vVX@wg`*`Kn z7P8_&wGLVAXHIalVw%o?Q(=tSAf@N|< za^gp0AxJl{JK3s$)eg6d@4`k+nhBc5VnSqcISFWsgyW~fEo_yQDNMjkh)k|-G4PUR z0dJL!t)@*(>5EmCai-hYmf7-K?7|^^3#((yL0$MlwrBS5sHbf8!h96Dtj|EOfCFt! zA?nTX(Wvg$xPuPgWTo_PEbx%upk@a6qw4gHM+7Yk>`jJfyCdB$1DlyvZDwF~nVcgn z46GcF88@*=D=q1K?0RVeCJUaEC$TH5HR}iZP-kvw;WFD3eB>f)=8N*>0(F7Sr0g7H^c>ieW(9OnZfd0&C3sCM&3_Q-$gR+bOpY>U zJA9cL;LVH7e&udsky+~&cA=TM6^u{gNmuQMEe8}B30<{IkuUL(kjeF^b5o(K(|Om; znGKmU3@B0`YJ;FAJTs!LwCD@ae1=jIN|kQWff)l4E_@+>iOzU1POy?GF*&^DAoig{ z-^<{&2`Jw322q^0Cza7=Eics$V(i1x4alOJcn;f4EC>%MyW`Ig*O_q+MFxvH!^jcS z(*i`%LS0TW(gN6aE3sn=0Bpe3?$Co~@rHS=kf z$JzS>{PM9ob{Vp6P{)2A#wy436i*jkrGz-#O-F28!k#sht!JXek`>VmMO3ZvlK3|8 z4aLd}2|LGS5&)~_gnZDVK$F=Q*OB(eCf&EGH^^!$MZPoXBb{=nR0YBC79<|S52O@i ze{4P*uNmK5InbtC^ZFSv3HZW&8BD^fYly?xbIdZ#JTz}3VM;KH6WJ(sG(8Hik=i7p z5)`J9N;iOEOupJGe2sRbWWWKDN{uLyedw6E_d2)e0y@mJ%wu|yJV4=#I-6zL&XK`s zRE#7;+%)-SoQ4JAVN;+{up}qp-`t^Cd#ucPdqH9akx9HY<&V}jHRmgXd!+>(n6zOh zPZOgt>8Wf&lVb}k8%h`^xf%n>ecM@Y<2A0m41T+B67|3JD(48m%;qJ?)liH(ENjyO-_ZXx1yCbU7e7p;iP4mgUl z!MG#$FkWL$6(zu~{RHK~MM_uX%;^+F83S`J++?(veHT(%E*5j?5?2w_9K7X7)L>~) zy_|q;lIrF8Ti9lV#8Q-4=eMvmA@R2UEph8^?T5sEYz0DcJ}F<85`OSw{d*0sqW?Ya zXyxS-KX26E91m|t1^AVI7d)4E8g(PoAAbKC^<+olo-edpYMzu7`2@ETeK+ynYY;l% zuc*loQsh+R8zf5ck9MEsS4oi{=>Fw!XjKsNjmx*|^t;=D0`-C6#<<@#E(dMXA2=He zi|Vr-4SY^9F8^a(PCyZU_1T+}`sK)-`sLfkVKB_V?(Q+)kV^Cfan!LMG%h#jq)L?Q)JZHhFngAP*`JNen~cK{>J1#;YT&RZl2KG>&*+yJ zGGty-^04PEF&Y2FPr9=g&crn8k&NVf!fu0I@?aXHtX68>IO+yFrKJVm&2jr+-I#8#;Z4?G;LjYT~eB zA;s~7IKY9>Mp92{82tF3UvY)4c-D*qBLfzv?O9JN*opVpqzkW7`s;OR>91~d0=Wh( z^|-62(=II+mQGiR4nwUba~>>S?u|29!Uqea$17vWm9dAAbc{YNHN3E*wK6 z`Re`3gY!@_u^c8K)W<*Wk{eN#u-v3jAQQ&H%#Y$r{J3|~AvH9J^L{8q0y=o-!Anyr zk!_k|n*V9>5`;dqT?upv$C!45?0%J)Yz15NBZgZ2PrOf4_+fb*-tAcP#3f<+7dQp%rH*^m@$~LReBYxCEDp!%pwt8H!jAJ$F zCQ`yz>;(f3)pMEJPCRbGf4H;e$6So+x za0KScv1oT9u@c(_eFm*qfM;pCo9ssW_vly?CS&wYe9*H_@J%(Si^(YJU5y5XF5sb_ z@a8Mg%SzO9j8x#Zd*(5*Atlm+N}SBq@hZY*?sVC?GF9ipcC{##gC;SPV{)D>d13?) zdsaEL)o#}1_`JKEj^v+gJRk4S&*@0qh&IqNPGKnw#O`sHEWfGbK!?dkNeh-&i~GQ-vY{7dX#TKB-@vw{5q+0K2XKMQs9o-!cHR6n<|Vc_#MJQCJMh4 z;s-kOibR?|nHHrt_;>mjbfPo!a4H|R9m$2V(hg&nW{d-6!Z8}uV@t8OCe&rH}5Q@jiV>92va5GeC?OTA!RjHzaTn_)v{G$1kU2T#h z&G0cqYULsBpl^(>y~!3ykw08P*wYQ5Ml)%~D=<)cPGn*ez6F#uLIS*S8QP@iFyWp& zm1~FwL-P7#5NcOv;1TdS?c2dGy%~~gh7gfx_fDbusnP_ydH8*mCIC&HhIB;{ACX%s>+s zsDj8xe&wcl;ls}Wrs-HlY;zrWVzA%96QsyeJnm+?o9G=buOy!0fh&5{ zDG#c|jY(G}C}fV30UpBfgSDRMEA(U__8?AoY>00>&WTN;+k!(Wyc59RP4j|BaLv*X zf8@*@rWC=JBhh9@6&!1L;$RfSf~?d}gu^E-IM?Y;RVUBHlSgZB569c+Z=}*K&8|*% z;4f=HSbsdupOt6GH(}=V_r2JzmEp15yE~^Jn2uf(8l^|}K#mfJ;YasO_sO}>4m?Df z@$G)xdKCZQRu0{|_gwHw4iKTMN}Mz&d1e!md4JX4LZ5T=lt|&OUVAo9IBTNDHsXsoI(^tyYT}kfV^}b~)FhxPK)W zt3A$3RJ?N%|6-X&q-Fc_xk3zU5N^YzVxBfvriMUMu{K?yCj9u8rNZhb5IXoW+!5^< zP^Pk!Wv&@X^si&TZ)A>5jGWYAg+MALF*8Br$;|9K6GSz~SrtT|f)+=>mmB~=9QdMC z8p6N_z92=8Iuk=+s^#yHb6*q(TXNm56{wYFNR)%EZU0NS@XcLvpYtJ<;z&1;PmgZr zNPJNbGV+sa-@KF>3~2VnrP&u#AjidUVLgUBqP=P??zk{kwc%0pE9#K33@;p=P~#%q zMdm?ORW4OkxeC?$s;aVQKFH=PsACvEqzD7*WDMx5Vj2+k_HhjL)~#RPe6#Ys72njJ zzRupzQDCU+pYV*q6-Ag^5tqv0^4?7DBRCt6-SJ0zV;6sSu;^7N;r$J2r+?s?Ik3Q6 znhJS|Y@v(Td*fWLfbyX~)@6gKR<%~PR$tm7XE1&qT=RgkMf3CVTGcnXX-#=h$i^LB zmFII-iCQCnUe6|o&qY5~JBLo8VR*CDuUpi9QDa#eqLJzi{T&Ud-8z%X@b-Z3W3HwE zeFr4?fP^hT0!qRU>@+11>(VKhfEmw8d`l{ovt7RtX>4cU{EIZ4cLC1PqFbws?w*?RW(;Dx?z5}dbrys<(tf1f& zf`p0fh%!MPw#O-ZbA71(LY`xB9x`p1$&oy$S2U)UyT7nD@t03*2PV}X!vPPd&yT6% zPI7;lKkn^Q8Na?By76o@Oc-d74VltPXt;T*`TsRQ0}0`r*P(eRmtS6j;nGQ-VEp0a z_Gu_(%i4#+lfEJ^IgClNz~5Ve#v1eY%IJ44%nWAL_FM>ZAwV|m_mPir7^(m>D@(4Q z7mC`610iOx9-l~4OB6Ax57+IoJ#{_rZvc#`E2htIN7Tj9E@;m@eZ3TCbq1mraw~9v zx=Id}9yHSCuhNVNenX)m9+yZ!^fKi94QMI|c-|h@)rB};72kBJ)#R)zHKBY!OOan7 zhz4A7eSHfS0xLp9cf6*6Co`$QR^JNY$l$4gbfsR zE(^kZ%H(`^cpRg^m2gz1w5fhbGp67Loskk$_){dO|Mb#*tmhIZ@w%E?U)X$w zuiyK^KVkyRtIb*BZO_GFtQ6Gh)4kWwg93$RK8@fUQCH5OuFz2gq%!Czg1ewIylPoB zI*MQnR6#0!^1n!Fc+-`J7fRz*QW`wU#`yb9EUjcilSu3ldKcK3{vvW|VxK1SPC5PfrnK~RQgZLL04dT87l|0%X8`>FEofjMZE83dcQ9ap4 z<-!HTkmml3wKRJknpK}J%Y1rt=F_MN9&c~FK$WZ0nlH|LA)wU9KY>M6A<&r+OjhV{ z4M({P|45#6jFGFZVT@drCylq`_{j{eDcKe?%Q|->Bu=0IpIgMqlvShHXVI%gP=ze& zCl+n+jl04_XrO3HeDI4LCx^pb#H!5YJ#!rK3umfWh5J_qr`ts3mf_`iQ4clNPs0l; zNcy4|Qm#Os@He}R`7aM$ldr_|wjR8u)4r#@PSys=lW{M&uZeVwulhWZGp+ui;P@PZ6EULQV^J<3uZa;<3-`DHuEXjWjhzAJ}$dKHAV- z1VWpO>xqb6b?bwYYX2X5UjiOgk+t1T0t5waP#oe)(5SeB3lc?1Yd3Uj2SGt`6vT-l zjvJ%hf+I+vyG<@_lyTH?A7^y@m>Cz`5OC|TBwCA`Ka zsP^}(gG&ODHyL>730dfT(@3YB5sI=+-6Vlry^1XA#{ZXq}W)u@|AJT8jD^%~PP8 zzDCf74AL*a$w7Bt#=6@pbWbE0+0tb;y2ZXXUd_Hk!d0Tv1^RN&cWZyZhdkJBat}`JU;6u>FLlnD>ETFF3^9U&9NtYry>uZfHwN z$^XFkz5{MoVvj(9#lal0KisTr(WcBZ9)^&m)cmj?P+)FC4nToC-Tliz;uTsF5||8~ z#4hQ5y@p?{4Pu)&hlWvriVg zxIOdimTk-aXg#=FD#&Ntz81w9cc%lg`}=O^yW|> zEr)0xRJYOv#sDLEM?05#?(xtmsiUCosHYZ4sa*^}k?5PKp8W2E2n~BoePnXN9eK|c z7p4u>_Y|&CiL6P(fTo_`ClK!mMGKl?;1Yz@441==_-CTgHlQufje50}xzP+~CE+6g zC270_&B>ejprn}rPZ2{SYs`-c$C@g()G&aKMd**@$53HJZX4&GL!m0N+NIqnUgpN& zYd9Ta(wbYrS^pqNdEE-)lV?cb@nloRL8}-(sSe?g8R`&NQL2-V|Jj-pk;zYSla%ns zA0tjf9$kEnAIVM#8{}1vwNmaeYE1@hHR=^GrWSSx@MN&|C{uq#6N*yP5#LPkGW{8L zBweyDCAzkZ{sZu7(EDLzB-0fA_~2gA54eJhoT~N#euYt+=*OOgGzA+{WBh*Fig16_ zh^JyJDqvLdxEuZIX1^Mq;c??`GelsK&LQRJ>@GRo4E>+f;k`lpAddUfE(*zzYKbRQlG? zo1OB2DgAYs#R&B{NLmjGA!!lqK{7PP^c12>nXUo=^=ur8Xa=j zi{$DdI_l7m`Lq@4qmHcH2$6}%>EKPz=uz90N-f`7*H=L5(9FUq*a*m+sc$) z1*5RmeptFEjstg2qZN5auRbibkml`Jun&tR5v)WpYgo1+MbUH^w5+z3$4QjfOwuvw zs~ZZ4^CC@MvG$&5#HX%QzY3I(>J6VMFuBV3@ny&p{!)7ynP6~m5=^-MA@&p?cv3ZxA9`L+} zP%kEobR!63#mTW8QKxTPak9O7mFR^8MK?O-9o>f?ZFO`BNTs?_iIt#2_%=C8??8to zR{UqWHKYQ=qWGGV@*&ya>Jt#c-4NdYDn{6G4vjdGveqmPFE`9;QT!W_ zi>+nbd^4;=O3gTcVU5sT6beMFZgC*baczA z&!-zUXQdB zi3NmKDucwZ2nyO4BnC5^Z(*p01lkxo_zaF{HPKd%@iNLPf$WZD}ef(-N`8}P|i z#6}CoDsH!4I?C3MADc5xjbYE64KT!&h-N7Znd_3RNs|-VJdhllJTA9MgGxk`Fe2MI zLq}!yAUCZ1eG0Ts#8Io*)-zmLTOsoxKQF3)`t9xSe|A{+1Ruidi}h z@)!j0|_h9G^VtFy(3+$W9yW={{m2`#Gq#tr*QaGTnlVj z80p_2&c_gB-N?vC{n*h#_pl@M-Ac=A4fu`vur4xB@}Wj(C|PygKg1!b_=toOyAL1z zR2Lg@NXElFCNG&gStos5GB*Y;(|utqfqzy|T>=?YKdI5-Y(!2|=Mz}1TGaHT({8LY zhny`?I)u1ylMdkrp8(hQ$HTMy@vc%p?C)1Q%z^3(3ZqyVf8wKN_1#*1#$gr8eGRxc zNkFll=J-2tRVCVwh=^ORDQg4j2inNDc?9=!sqOye2(~-~ON2P)VR)?)VEcT4@h?}C z{vpOwlqJ+SbpWWbO#ttpL-Lh}OR~Y+QoL-{T~8g^yE67Uo#lDjhB7jivlMO~ykSnI zdJXowlge=N54U`?@_%9e10rK#GpE)7b5ToG$(+^BIhC4W;6i3@EsT^?7hh*DxYnR8 zZlp$w!w~EcH|+MEdg<=&)a~d!$*JuMw4G8=m1?O}>u;!lyc;wnbNDLGn;>4a14PF zy-(YM$g@TLj+Du>U*cfU^fAPt+%AJEnUc0@?Y1TaHkbngExik_!?7w_-Td(fiFB$k za$IQdMoz@nA=6pp$1)S$NaQm@%utfF5FxA~8z3mvAy~{2;zKTB-iF@%w^+!}hvpqA zQ%MpYW8?p(>xXR<x)cDAd`6WbA>7D?B~%;MfcE2EsS|b^1Sc24Hbd}+ zK!PKoW>INS?X6R(T$cWglKSxp;zh7|*|;Iy+b4?S2vp>bEx5fH0U=lqn#jmiBPrU) zD{V(L^geg7AV4WQ1jfDx=ll(o99Q8KTt2g@o9~tA>_c*>EMtQ)NNzCv+W=2JHW&mG zP(Ye3A@-Yq0jD)0Q^}d#v=VJNSf5yq9N*6FOW8m^ExKYuzLRs6Bl6Ef+byllI+DK@ zm<4>&L&GGjgKc+-_3*3KHDafy2Ipc~iLMih8cY#O(h{=`cWXxG!)vZ{CG+ic z&ZpF*P_rcgD1umWiD4}cbmm_b?ZhC4YU_f9}2936YeGlJwnvp77hxvxQ&B`uXUzxQ!UXNegCURPPedA(77kPxCcoU zdb|<_dFT)flD@>09>~PFc?8*tMD8;acLC#5-K68QFmN zfJ<=t8PAAIr#*}hd8=)YYKdY|Z|qf44!0vMV%mXGE73(bo|?x1!Md~7t4wSwF>GT| z+GJ$rhRepI`#CYL3wS7&06X(&HoQ01PWvM1*z0!>$Qfo17{wI!IztHBeVqP5)SicW zA!fuCQw-|pPdDHqaBbZi7|+H+oE_z$!_ohaG1$+3fi1cA4%8~fr@8uf(@!?G8Zp4g zCr65r*b_h558-k7e}SLuP=e8#pR6=^+{Ao_YQkJRZByIX@%fu>vIV(Z5>+;RittAk z``V#mG8xy=GKG^8em94Sa*fvKb!$AdBbdN(j>7QKw6~aHSTM`0O;>i$CGcf`X%gvc zVX^Ma6jW0j@j&v*w(G%C((@!8p$bl45(ly0f_q#I-F!fmR9R7@r*EK+N)�p< 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%0D23KwBC{{WZQ`puzk#ez~sieWx zfO;e?*=?XeOiIh4&tDNA3;)wHKAw`_v+?n24nC%0&IlA5Tco02SU%L~I8;95m?gCBX-@3>=J zpRD>pNAShS)!?eq?n5r!nG|mz(PAOegB(=w6Q_@sJl-hQQxt2|q$$)fugl2$J<0=< z+FI5l5yK`>KV&amW89ov4|h7Qhl{LSc!FM*82Ov^QZFjzw&;!y+MmAHdlW@pjIPZy zHdU3oJcO`4vt&ctLTW4x{;HJ_sxEs)-xR59THF(jDZoBDb0g-7cT9byFQ{`kl~bQs z>#5F9mKkd)wfcutmM;tUz)iyj=KHR|nnT2|PxZ%9iXkM2i||qX#MHC@`&)^%6M>f8 zl4LEneW&Av>iP!PHgC~*x5f>;SmIFS9nT`R`*K|wNET*RK18qlJ-qb9U*!f3ZN#?n zis?CWljhy*iM$P;0ZEPL)eZ0Mth+CK|ARXg`b9?;x=IAPx=*sJNSYjh7qN5?^_}5+hfyEdNr8 zaV|Uf?J(RL1@p`PC7tsO`3mOfva098)=2W_2>^ zBPuaCIePK!v^XR~m|S9gnSuh?sc3)3Hpf@KLy3{iRFG(F&#A1?qF&8*MP_bXrH6JAkJ;jo&zb0zvV-uF#_ijkt0-}9CvP~Ub>q@g|7 zGJ?|!jtLs=W6-Elb2`=si)CJp6wu9a@nSQp+|wDgN(6Y-cl3FYO!kA%F|mI#AU2FT zN-O|m*+u{x8p<)-wJDG&Jn9ED;h-wzp1+7XrTIcwan@*8v#&(#q2%)CtjI7 zUPNn{?6DVUwf9)qtYET|{l!HdPW`>0y}iG;BBf)oOJuG-ToGbh(xW+Cuq9$5l4p;A zr1ma$`iV?}JR&7gax}*db}raxVDGyIMIbvS?1C6jLV11zC|C^pf3W_7A`zSxkx?p} zc*BS`3FR;jRIl$)gv|zR>ix;Ep!}T;nCkPDNC`}DmzbU@$k)L1e3%n`YEz~9Uh-c0~Jb*5|ILl*_cRM93~QsZrUpl48#^}HL*uaovxvY^2%neCgwnb zFIiJ>w9)z&3^`jj1_4kQYmnZ@qPtxwf zF9=Qe#7RoySUFKzt?ZQ>wz^?O+N(%88Og5T(A5ob@`aN<>4WQbghw2C)?us@CNlmC z9ARQ*G5V!AsX%}mt)WL|%j}6&Vtw)fkf)%czaf{mwvYA-2|u12`QC2vey+PNK_T#E|xG z__s4XjUzo7ODnRHv6G-QnjiAWHs_EV2vTq|C}5NXC0sBO>y<9tRG|MxXUB=oQcS}J z1e*iF1#LrMSP&;ul5H|WFZi^ zU7wFS0^tdH+VTH#Mj-8tHUvVmL(%jT5VxRP4bbS;Mv7^f*2Zjeh7#R`?0L9`(Lt_1 zh9qy;kVnFXEE%I%Qmh@6NzYwPL;;!4)+qy>G2urFdu z3VC%KRFp8PB|?Wo4snMM!5%--ToLN-jXy6%DPeKD+J~Eh$52w4a;RtP!U`}-pjr&w zk75l6?Q7fdO3JXW@=4ewpUuw35r#L*PmKHt{uS*EPSD^g*SKIySDUZlYGVm$P>1@> z0kKs7O3h5vY>tZd9#Xn>&{8B(O4MOA*Ex6-qkXaeF+fl;A*=oF{({}g-f`0lLEaQ) zu-G>xMt$M=r7EphBiyGFnJmXt}EPmlR zF}zIL7QOtHF4AzaqT7TYyBr`tbPLvl)U8Bs==dDS-o!}{a3PP3>-!dW1O#*``k#Z8 zpY*O}VI=u`9uwn;{1K&yj+A0B*#_5HG+m<44!b3Cp)|SBB5Ry1C9f@}+i3gLh@sg<+lqpFLL$1Z(btBkjn*c6{4QaU} z(4k5B0fxl4yd|Iy&kMA+65<+}zyo47%fpTOl#k$*7jnt%_|4!2zsHO0^9S6I(p`|I zRH*+ULSJ11rUFwDXYOA~9f(%WsR?z{q<)a-u!-@j^XFFJ70e6?#8SdG2fIsOQ*u7s zBD~;wFpVW}RwM3fQeqpB59Sm)IjL*GOoD1X*1dpQ@4UZF}C7JOI@aEw^I7P)XfCQ26beTr2vnz)tE1 zJow5Rl^D-oRF*GMVlUx=S$g4@eIWDVM&)%li;CHLJU1#urJ90YPu<{jWc%4(_3Bkh z%`IRqp7KwX=XDv~BF-f-8I-a^Zs$@YMJSUV#pq`Ze63zs z!|>S($43-X=GRxri$Jl0&=w#U3GJWwC6N#Gf|k0et6^Q02_^P8*egZw955L#kzh_i zS>ucm5NSEk4z(mLObe5iQV7tKJD`kGh+LvH!{^{w5!AH6fWChy7D5)TMil;g9(Z{{ z&}#=DRQqg8PG2iwN^x4m{~^d81N=GQ+G~<~40YxiUn&GFcSu9RH`JHlvkk75QhnJ9 zqHHVcDNa~A5HRFH5n(Vq;eaOT31{L+%-sc;s2oQ8*!Gl3ALc2kA;!&vHVa?XaFbK( zkKj|D{cb$mWNdOOsldIRlFc1Kb!86OY(lU?Hs;rX>4io?o#29&s^TS(mY~lgkO}mu z4>A%qxT#l~Ze%RRH|i;xk;OQAh82!o6I(m(9Hbu{Ud{=G0uI0e8>6UX~ykA%K5(E?-k7bdLL0MVj48^oRXjuC2aR zh2d+NYaw%mMtkN~;}=4QFwf58OL_)W;5T_gDeTGE zP6Jf#&|nGCb~a_%CK#)F0DnJlDL8XX5F1 z_;u=iGv1^3=dI1{{l&DJIQ9OOyYlt^6dbzG?!A&#jZ^P=Er!+mcaWO;qwLFEVdY?8 z<7))5I*`W~jD~22HS5$xAS}zdQ;DYGVG+oa|$@k?n%EU2(b(h zp3Vcp^~D6OO$>&Z7o7jL znrxGzam#HgHRQ(@QSCs=X;3zSda^Kr$tPGYrmzc~kHq(wz$YSmN!6|qqClznCZiE0 z589`-sgeHq8d;Ok2oD`N^`u>HBV=yGYRk4e<0 zMDIj(WOn#5?uwKY3(gJ3olbs#AU3iX(C`(4737R(tAtuA3DvoyT}_xe0E*6HuwP@=scKIG1ellI9WPR>R-qzGA{$A9tc5c00>ermxHCDM+v0IVbt`h~IK~JlHTR)+7BH_M<-}+FZ6mly18gE#2BOyki`pw<^m1p-A#JOS!uwq6d&sHS z*UYtb=mGY%^%s~_M~lAi#@hM|OsbbK;91n>IH}B~=ogq&19RK_wI|gwG?3NJ{F91& zQcSAozfp|SVaVQdud{O@a6&XWrjTRSaaP)7dTZ*mnMp4NOUUZ9Qpm~-~|e>LT}cd)JOioR!3f`p<}AW!Gl5#qVw}|0JBBsR%<^?*6u87-Bs31^w2seWlAPBuV^ZlGvA#{ zLrx@%;6>&f{R4_{j;@3j*G?klk~M3xZOLM7=8|<{ldgn&46pqNHkM8_xRn=XYk$rI z-bKilHKUwp$WI#DqFo{6J9(zo)XKzukGLlqjT?4XTDgY*3910?bevVtKT%YUy$`oz z?P7Rv>o2u>nA>v8jzC$l{sX;sH0%N2_()K2tLqSs;Yn8Y3vkD4+t%bS$sNVPTw=$% zvB`4*&ix#Ri|+Q1!|agNBiRgYDOQ{=W?%Mk2Z29-ctWrP_FY4(_YQ^DdmD(4U3Fx1`d0Kz}$n8r@4OjW-?Xp z-@%Pa)H(@h6t~+sR7~riSuu~CinD`GesDff3w&L8Uylzvn(Gi^)K^rB3IdTu2#4;& z6P_D=#V$lfLB2l0I)uuKB?1W07gT$rME*;ADor3#f5>f}fGJTLVg+`b?$z0c0s>;0 zYMsFqa%;fBNLiZP8n^NY%PDdSMTb!S2~-Uenasg8bbk|$w1p?VuS|Hps>6#Aw+O=> zP+t~rQWrTj+cgi+GB7C`4aAKK8JBb%s=G^6r^FV@o@7(ngniB1nNp`ZHTek2L1l|i z7^%XtpjwrADGHn%5RT^l1Og>?F)v6#xOZ5;#m$C6xXf3oI2u5XssrphW7H+3Fcm~wCzJt{v;fw<5b2G!Dl3cY{<4l2q5r@sNte0*{SCqtxm zf`iA<@=O*Jj{blnb!Bep&`oVA3BH!RyjWblqX$TY;TY<=Ts@_q%R9Y0mi6@5a4#7LSCVRx5vlcjbI?+E_|%_0 zQ@=>NxE}mGMjklyDZwrFf}P9|SOSOUh&KVFKJ^2yy3`>CuM(Y1(!uSnQXHf|BQ)bs z9|;cQVdS~*8eAR4WmO$1mQ=vYa45w5!uf%!_ulNe0rqo*zF7H9MfFBR8QJQA?{oWx ziVld6)ureTMp@aXdhzmFe@6{DVZI;nVLm|UOO*o%^i>8R-svMgY;Y9`NQw}PW**!2 zuSAdqxB4OCn|R=0_`qbMwXm;OT~NI=!5a!zFzQJ|MLPj??Z`qdJ$1up`)h~7{8`aK znSD-O_eE#~UI6o}mn3S37Qvl7Tn;o}G36YF$oRPwEXM+gwkvll&=YIya-fVxwx zntpok)E#;u-umlCy^eSWry!m|uc-CSD6e|U5O7k&u=P|AD4bYXS5_EGvTEjMNJE@XT;)?<4VAeA^&9&Hly}ap9&qYJ zCDseyD%~5c>M)-Ib+;BE(qT~jFv$3L3z8|!HzME)fCRrq#?7@_>wwly?GWGz%P&I< zJ=43Fc@gUeh$%;I9We*JE)cW7OCY8*CZP5VhP3b2R44o$s(VEvLQr~Pqfa;zXqQ5E z5bpzZ!^_;l9Pf$D6W@UNS!#G;K>aw>Lz%rF=3WAo-MnvP1LIZ{cEgT3P!}q6<1~oX zhokjAOa%{B>xmAugkl&`K)xZUrZ93hrwM15>o9q+T+E7x7iz1p7_&pDv8-M7hF#S= zYXge!2ka0EQd10waN{FQG3w7md8!AxVSOpqzlgEJIj*L3qdlB8@a<{nn6B&Yj_jnj z1hvGG#*XUzbW`2%9%;Os@+o4W9Md3BKrd6c+yK$GCpy5uzfu;WHqmYEPgB ztMz+XA2^sGk^1Ih1UW_(0JBiLfiCkpN|orPNCo24XceuVQ;dWQ>U|Whp3_Yxs0^>3 z!>}Lta;8Y^FB2z<1ikU`rI$!ROU*=gk@$^FbQFmmGO-hEu6j<1Onfa8Fut)&vq&5y z6DvjHV3}wT2^g1|jdzh(&pA{ko)L+|Wa6(P(NiR%(=hB>9o|?yy$P?(o-RiMwOuF5 zyeAW*MPh|aFrs7i9L6O>Hm^vml8Mtr;(eJoRwS?~X0}5`;zOAz7Kzm|Q6Lg)WMV6n zbJcU;TEQ}!NI*Hs#783WkxaZR56Pb8LBt8|1=z|>mC-KJWDP6eDo{pE; znJUUK$`on~i3Ed9AaRXIFbFOZzZHp)OjL?QSSBh&;#QeBMI%)iQ8nN zvq=0=CeqN{RnNIyCcYDiNiy+;NKBTA)gp0+Oe__NDIyVl4!QtsF5ZB5w72t)RB6VW zT%s?~=X?->F5)kenKb%@M-rS>;miF*KwTCpQD(Q(1B`d!P8=M?oldB}g)tmg9x)3( zn=?ZJ@D;!ML2|?4U~ym+I1)7zUOgu(v(G?Hp))F~5yS{gLz#8}*jUBZ#!`4EqqWGU zp7onLh&WF;)4Ca~rNQ^Q%QFjS2E(hg;oL68r&VJLPA}|V>w6sz->EOMdZ8V)(>`tA zMP^U+q_S=pv!}7mxH1n`zke!=p7cod8eQ>;)=~zB0S4YR(!bR?3L;wI724S!=@f9P9qUW zC;OyYPkva7%-W2M2BwKDvv&Ba3O(vHFZ^AecYgz%OgV!RGFSuNMiE^HJ)_ks$+OAz0d-B)TKMFpPe z9S0!P=lyu>ixU@%XPi5IcxQKXMYuH5Sd{wxSSZ8XZcpt6?Pj@U`Q=~M-G=X>!Rn5! z^WCA%(L`wNfOIIS%--I29oLio!Jh3xYY@51U;b%$%YgPb7jcQ1l}321+Tg%;yAqz- zj-FkE-KkduJdygM$olP2V?=fwHlbS}T@P?#oYSd7mh+^s71z>;N#z5gFp=q$!bi z@!p0wJPt1_tKU$pEGb{E#NNhNELlgTPR3{yh0ls?>R7*NKV|lLZYWCY*LUu;1EbQ; z92G$65{Ld#=5X7xxlvmRIzbhM;l7bg1@)US)%C&LuhVu^*G{jl9`6gx>HxnhH8`@# zUBBrtvp|Whz54+V5}b?~F>5Y}7@Z%mPh``;PK{I3 z)kxlain_f%iC9=&w!H}ayjtjiVAWCG5m`UQ--(izw-U%JtU!hjV*OkNlcpA?a5

O&NKtFu> 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�u|-Z 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

Z`F{Qr}KL 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�^rEJ3&%uUr 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�FfSvFRu{ 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

ykdv!oiIrQDQ+YJ(#>##@t0?z)tGdK^ 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

n$TCH?oW#9;EGj(9k+m^jZsF$2 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%0Dkk52ZbY1^rj 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 z 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%0DIxlfr(=z?dteo3|&~ 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

p{;NJZVgCh%9V`@n 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

X4&tr)Q#Wui6Jx2+v!2H-Wmq@| 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

aylWPZVG7|zhv)p*UW52U>NBLsKIZ>O|b`zKP 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%0Avb?9?MantyTXtu!v9lr#E1V&~r6sMcQ72pY}d6 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 z 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≠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 z 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%0D?07vx0zGjvV}9x+cfs{y?>0@ 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�=9X$V247e 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 dK=ycpL7*+wj7l)0Z_1c&ivravUJ!vPL@+7=J?K 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

  • 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

    1YZlI7vYUW&5Sj%W#%sOt6rN_bkTsE_ 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�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 z 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¬jo#)+y>4~@o&x=;^|#)-;M z4~@o&+E7PvAgTjV9z{_fhyp=W2%=c!x9!}V~Th&7eJ4H45J<6%LYNsL!N*xu2;e?%U zsd_kJ=i{m#PT2XTo9BlUc0Q)+;e?$XRXv=rv#zR#6L#vV9!}VqM%BX!JB#@F`{9J0 zE>#aF>~!ogoUqfe$8f^VDeC#*gq@B(h7)!=_83ms>DXg9VW(q{;e?%zJ)-PH{Gyb9)66de zn^*th-||Y2fPeZB|JGriz_u4=xerzA>N)gFIrovwOFTz*di>x2aN7Q1;lr*Uw+yw9 zzH!`jEOEYJ4=LvTY1Fs&@q0SBejZT3_~o{d-V=9CF#fMdcJIk*+w7CSC%8`K%V3=P za=q*Hshakgm1n)b?O$P^eeW6Xxn;+V--j=f<-Nu1sGf(tX@+(%(l#qB9o(NA>B~%V zWoVe)&KSGXo9WgBBh%4nS4{fBcFdOA-pt>fwPWXg?9H;SqLFp<30Jlm-E3`ONpJQS z-!yXE)zOu+Phlfh^)Fqy?{M3B^5^pAwO+OJo^I;OZ@g>g-~YI`z%RA!f-79!LOTtk z@PsO^B8%R&Z}Rr^>Tm2eZtgPHb<1NNjiQZo*RA)LFp3px<1JqM6Qe|i=UgQV|DRp* zyAQpkU60$P*Vprw`Erg?_Wc2_aw`wou054pb@a z_gAgABv378p1*p@U7qScZ*kYmwAfQ~`&@UeLvMR-oByi2_Sz>rbzXhMU3Xe%PrU(m zyW>Ya7O3BGfWJY%j)8`?@A5ZlT{n=BMsOO|FSE;-scR`XAS&RKqcB@3ED?U@VoCzrQ;AJVQBrENpnH>8b2+Bu}HL)tr} z%|qHfr0ql6Kg0$gcAzM>0I>%}u?dJ>Kx_kI9}pXX*a^f|Aoc>W8Hn9LYzJaL5F3Kn zk)qfV#GVwzrXY3&u`P&wL2L{vJL3Rbqlmo$Yz|^~5Zj|*e-Im_V22P}gxI5^*dztJ zR218U*eAqBA$AI}RSNbBu~~@SLTs0U{X%S*f*nI_8Dh_hV$&4tT2X8pV&4!OhuAs9 z)+yLK#O5J(53zj;_7Bkj3OWGM0*D?!G=YLHD2g^f^g&TH0-_TTt)QS65Y2$-21Gj` z`T@}ph>k$C1fnMpO@Zi&qG$_5Ulc`SAUXrl8i?LNGzX$P5bc5J4@83?It0-oh#o;S z38G7iqD>HeQWTAX=oCb&AbJJSEJe{RMbR#ZekqEEDT6B{E0Pw+&k8UHwswRvmfdc2mNME>OM|?_wlvX$!KBzRvTAb~;wIoM-Yss-4)`y2(`qDi=>C5)t ztuJ4^U0*Txob}P03w7Vvg8IjU-_Tb+c2@tS{SbXs>&e!qHSX0{*ZNpr(|(t=W?!_m zqgg=TS>$GGSF4%&?y@EIJ>_54_ndl7-jzeyvOZsM#QI`( z9z8H-qxEI~rq;oS2I^nkS=#!#t!aHzDc1V7&Mf`Af~E9Bx!PKX&ScgPpY5j~+4rOV z{ed?64X5bT%#@GTjuFNnExT6)RFCzFHm2BN8^KW0pl`)m&0@TG>|$v2+=}_9zrw`qKgo1gy#pAz6Ii66vf9t{0zj`K>Q8F=Ro`prh@N* z_#cQ5g7_hbFH#hL1o26V;+G)43F4n1J__QeAifIXuOL1P;4F9z{#)I)nQh>xQl+KWMa9re&&4C3>shxTF+-$y;P7lZgf>Y=?D#1~Qz z?ZqHIkvbcuKzyTOa4!b&k<>$bF^I3E9@>jRd?xkKUJT+psYmu==%evHMD}86qrQiK z)LsmcScJIbnq!d|302BflsJWPP1Ua&>}b8B;Z4jUd1184S@Q0pGb@!yC;2NlzTj0V z&+nC7EvA>(a-+N^H;!ehe-UHChu?dw;Vxt1+nYQap0^FPJ)-AK;IyQ4C!IT~+)3lE zQn-`8T~fD`wmr?G0h@H~q-rNkJ1N>p&z|w6{03>+qi2n=VZDXBoq7RDrA``kQmB(Yoz&^1O($hK>C#D+PMUO5 zq>~<<)aax|FCi(>NrzraQlXOuofPP#KPUA$Y0pV{PP%haos;IA6z8NjC$%|g%}Hra zI`bNm%A7Rjq%bFaIjPG@TTaSy(v_2{oHXU6C~qj~$w^I4TJi)*NlrTQCX$MrG~~@B z1v%-*Nj=^|(vFjIoOI))8Yj&-DaJ`JPHJ(|ino=N;-nLAC#l5S7g-%>zv?HO^x>oq zCv7+>!$}uTs&LYTlOmk-;G_m8EjTH`NeA9tQh}2Oyr-l9C;fLXN&QXQZ&H4f?weHK zr1>VrH|f1e?M+&5QhJlld!VH9CXM$XN#Q+M(svJ*)ZIfQZ8s^qN!LxP?k6QpHz~S@ zzUlHXPVx_&>c1p0X}+2(IBQL2syVaP(n+3dWr7K^M`VJt6F+7q|B+OTGDTw|9K)a> zMg=h}h;cy-42HIV6hotqu|W(DVssG0gUa|gzyK*?gaAW?7$d|WAw~%?Oo(wp3{+8! z6k@1~VyqB@g%~Zwa3RJEF<^)hLkt;W%n*Zy7&XMOA;t|caEOsZ3>{+Z5QA3~qlXwi z#P}fs01*L*5J1ELA_x#sfCvLb93TP#5ebM;D2iA>1Vd3o10oy{@qh>jL_{D$0ud94 zpg=?gA}kPbfd~vlWFSHV5gUl$D2nJnga;x%5CMXS5JZR|VgwN+h$umX2_jAqfr5w> zM5q)+tRRA=D53=sE=3V9h=4&v3?gI@F@p#iMARU{1`#)iz(GU~B6Nx(b`Zf+6w!kS zpQ4B#L;xWo2oXYv7(xUQB8m`Ugoq`j2rWcxA%d$Yq6-mTMG;?!04s_JLxdP2#t=bs`G zbpoy8AJOk?*c6`cBYBCEiu7Mm=!;54`kg0)?=N^&4B_FG#AD&V;2d4>cm9rdmtG57 zq%E%ERsG+?uVO`N#kzka79QY{_pcatmG2*XmArq&xVjau{pM!B_DC z2+ z`2_@D#rs#TdqunTrSkt@-v_g}i^&t9*ZnZq=)J z|EhJXUb6tHC9(3Cs$J##%jO{JRlL6}O8*1z|BlIDs(zL4AAA+>U%hViKk)vqczORC zSNZel!J@Bg&H``5h6_Yb~`_pe#E<~6^+(;)vo_m@?ZSouZpQH zudQ3|+Vxkqa*~Ez<|;i<_*L=&!~=;J`U5B6Z87CCSLuRWuHdWq1bhX5b=091u%)p{tBfYqT>~drnGH!2b5yM)TZ}!sFtUsyZL(Q_mpsm>_UVkt6s>+T$NpVE z(iJ*J%+Qr%GHWm7SVqm0AE%Se9^?^URF2@iT)O2WYKzpg4G|DU5fO-xK*R(hC=gMB2n$49 zAOZss8Hmt8#0DZb5Yd4M4@7(vMSvh81Q8-d5hI8oK|~26Ob~H`2oyx5AVLKZD~Mo0 zL<=HZ5b=Ttn4*XnM936H%pigW5jBXgLBtIra1fD$2%Vyc9YpXTq6ZN^i1;Qr|};8PHqmd-yLT1By7pKi~*2nVe|vZKtCO+#;8%Ns)H_MjR$D z>7~Mr(pzpEXZOn8j{5u6EZaz$!5bjW;FSlGR~m4p`aFrqXeShj040i(2vDLsiTXIE zA>XZ{x8xC=JU7*dEyV^%WbjnA`C}jrkrJBn9ZA2Z3_6m2?-%twMAGl=Ro}x^rQf>| z1mlvPZGAa^RIXo-BMhn!>CU@2ys$(kJy2iBu{I-L!oY=-GrMz_c*~b3-{!cynKs4e zJsp*p?}*Ene}C1u0vn(86fF&wR!%k-mgc;zT~9)Q%rKrB{7#lv(hZQFihsquiJkM)_fLj0yuS zBd*&hqhhCJGNbqnyKGm48Cb%z&|8O1ImzDGuxQC!GwkZ{;&*!7&qQ*fTca|t=0kaMai=M{2pA?Fuzjv?n6a;_og8*bW+ftPF1!-fD zb_Qu{koE>?bC7liX?u|N2Wf+lb_i*UkoE{^laO`^X`71DJ|S&XQQ9e_twP!>q|HLw zEu`&2+Aka`=l-A8h8fUtMiu>87DwHCS}ekqqh*`s(x0W5)9Viy*uTp|4|M6Hq^ilC z{4bK17^!fhydXD@3wY&jtoLT`k|z!amaLxRUw6D~V7)fY={la#!rnY7Utr6ty^Jq% zj`w`=L5w^4ht8hN`F`@lB9z#_sZF9ofm7ZCG`$_TX=cHU%SKX{ ztM4n4y1chZyNIMN&#T(QUz)o7Kd85t*+cM?2B)K{?b$|)B*JmktH)vTl2Iz$C|tC0 zthyP;7N2E}-IZRykvAn;pQpIF{*4aihOI@+jgQ`DZkp>dH+$M^Tg-!|zfWg#YyUjj z)-#o~ZN1Lv+q;$uZDO>u!C7HzlBJdY#Shvu9W1R;POcL zapKzGHbxB^$y^5_S-GiKr5eblD3=7B1v*7}^!lKYdNx_|yE?OWL zb!QvSPx6vHIC@lmK|PCC?$)QN8c1I8_xzS1KUshERR;K>HcSB5xwhRD z(w1SUCwh8b75HtQ)KCR}TSiw=^gmNfajUd(o=-dHLx(m{l=e(zr-{r412>|8{N-L(MQuqy6AP+w)QK$+a}(jZSPvp+|j(K zxwGb0eP_?_%$?H)xOSCVpzSVOK-&}jy0$mX$L8L{gSDJ38)>;JpEe_-+5e8w?DOY> zr;lPDY6f+mE@P&@{zryzpO@B*-*;jFY3#|5WdK`-x1Ia&<4!yvoqbMFAkl#o6%_;* zF{Rq`m!d)8*!xcE@+-u!6ven81_m)Qh@nA@4PtQciUWyYkCYfAufre}#V8?$2{BHH zfhvlTDvF^(j1^+A5Tk_{uA&$(Uke5dF=7}Q>Rzh8k1BV*t{55Wjtq5U7yWzu^+VnN z88NzKYG~(0L{WxDM3lW-2{T9Ad}bsv z>Z7sUeCxaajggVWMd_0!@n6}*?d$z4>2teeWF!HPL`JE^L~I=*CEQUWhp9{hPaY5v zAW+Xu08ymbXcZ9k-g4wG4UDiw-XD8}*rcM^CB!xr#Xe!GfsoiMzsF|zGO$~S?ZQZ4 zv{!vEmHIDGtXwA&7||~7?A=|pk2cjKff3)w-w_zG{2;V?MkU?KkW~NcFHw2NpcsoJ zhdQaHW7-j5`K@y-g6qt}PI`pPRJZE7PP$Z0lI7&OEXS7&j<#*w6IFKgJWhlPgc@Ab zMU+{7#f`F9ZXD-gaI%n3BqZ4}LgGBfxeq@FQ8{k~_}yf&k>d1!$$e6hd2p$O zeDZEACRAlf(s2PorFM(H_!d5VXszmFLP4mbB8peoCx*K4d=v(vG7zPKs0~DMAgTjV z9*Fut6bPb1ilRgiHG(J-M3o@Q1W_l5LP1mtqEzr&v-_cByq+wp@Iz5F7|QM^%0@ku z-A@#bdaBv|MDh52D7&91AN9*+_d^YN-evn7FPH^~Qt~>~5~7&20#p;CoDlVdC@74C z&db#I5GRul_&y@p=K5%S50PwhZPfSh&&oEJ)`^v)uOd_q$J#NO|E`~)YZM15u2G5; zMT?^n=OX^-cPy{0UWgGZlc}c?XBd zi+s*dPvrAS$EqjtgT!r_mel>(v*g$~&xc>U{=>pkjZS~}66L9Bjnc1JKvfq=t z=mBq@oSVIQ(|+X5`*Wf<-&Yg8`L~bu7Wm|U-h#{K$h;Fv7TS-JMfT6g0{a27xW1b# ztiMYZ)i;&}_0?rDeMwnJpI`Pvi;)HNRlOxn#CS@6ea7Q#u5iFpX2E7p*~uSy%8g0% zlppr0yTZWHp15w0xGQ#=9jMg*aX-BT44p7+QmxWpt=ie4T8)BZ%o+!}XiNfS0w|L| znfO^}X)Uwv@cL%Gv4za|9!1Ui!)j^`8mBiKc8hFI871-S`9Ij;`Hv*8ITm`oI~g;` z+`fE+Y0PpjRu^6`oZ4~Fx5X(;X{lcM!E@KF!>%L-Go&&zK4FTYb*XO-Gmnj=D$QlFS8za)6MCl zYB}bpVv?qgRB$?yO7c0}Z^&bzIoub`8=G3nVk(RE_BMT@Z>72J=TD4_I@)9o?AEsi z2e!Si)U(|^MU9f~toeyEI-38z^X7}~`>}$#|J!@DgOjG&U$s8&`TBpK8Q)Yc7Wj7H zm-ctr7kLh~-R3&<(@GgVt)`}=MCO(Ki$+h?(owauVe+lFLkmhTH5vR*`knamuQ3U^ zJdp54E+L}NKMp@aV59cLW=@%u(1s|fhBPVK7@@?2N9PxUmz_!`w#V~=Q^~MF>ewN~ z7U5;Pd4hA)#YTBPb_%go7#u;xW~qlpOvQGor!;kp$FXIIJwt37V%HGchS)d6#vyhN zv2{hUcfL|=o)Vdg78!A+9WZkQMnb8-Ka^5a(f+0SeaQjVt()zr3afvl9jaLB;yL)q zchF@m5%nxyxm%z2LD%|&{ahPPws37+*+xyR%_BQVoky%l+gNTp*`+c;tDQkGF=C3*m3R8yDsn322_6sM!gi7iazRUp2w!+z>ZaVa^ zw6RPL9vRT9PtWeoHm)rj(e5rRs;@~Nd`WH`7x&8D_=hIMUXQ_+waZ@htbg>$i?fHd zGCjFVO!eo<_gQ@2O#9t=PiOPxJCfC(e}BXH0vliT7hGo9g=UVj3y*uoE;4d}ebW=& zY`yng_RSp|+qbl+ZWpax(!RB9eml6Mb@7HR0?yz|ac{|Q@_L=Ymo08*@MW$$^}&}} zvK#U9vJ>$uvJ3Hpu4-rd$?n6$y)_QBkzI!$@YY&hRdyS`-CKJ~Yj2&UWxaKWSN7H$ zo7EfNBe%Eyurjiv@JVmOZdqg};l193hR0+F;icXtMYp<|9Ni}}hkruVMA@!oc23wqm~ zyv5r-cMVtj-RZm?P85*EuHSm^-SL~Nqm|axX~E~N&O^U(-8aVP^4zz^)#b_0y!Y3e z?&{iUg}2*HFS@$dvAjJpP4)IH{EWBfp%LB(&UW+mTKkaq!2^xG4^3<7?Y+9I>*41s zc>7FAaP@s4yVn?ALi!xb%e2I3*MN$eYhc3nu1B=vu0a(tdI#A%T!XV7_73(hl7*%l zypJWm>3V$gEbkLvOw2@~YLMtoEee(Sm=cprQu z_!m^*kTfP58np?nrf=D%kxTYb<^wQ>qsDQ#OJ(X1&%4M3i5J=}TB~M>V~W)O3Bx&j z4on(i*6^}@DPrpUCoy-3$wSOuQA{6V{tyX($N)qNAaVea1c)p^qyZui5Q%`u1Vkzz zase;g^c?Bn@$hhuQa~3n!sFrLo-J{EkfKNt z1v!F95(Qa;NE1Y!AQA2s}O00$SXu*Au>xrY9Vq+g@0|syHg$>l2y&yZq>}~L!Q-k z6r5%5>^w_j553(@)|tCMS{d0!;9oZXn!UNs3!(nR04derOV&DUl(u=^;7)izC;8(S zcb+6oSV^@5g^)~zWy0Y}$EpLR*YGV12qgN&9;*Ve3`MaHh=st*1{%RZo22~!upVBA z1wpI`Vo8cgJ5pj%)Uhi0T#;pLog&NFXa|wGxc|VpxJ>aoub1ZfPvE=!Uku8mh^1U$ z%4MVIn#iQY)6Tu~Nci#K1>*%>IZ28smxz}fPx(9{CaT!}1FA`qe7>0zM^aBJ1ddMd z=yH9Xbezj82V;xRA2oJY=Il4}UiEA!ytBy778?ieE?ZKM>^UFVbN)sg1B*(d=J7Z& zo?3x>o{s&&N3Lesp5)H^lYV~x{q(Ia8SOfq4Pnf5lOv4un@N%2N_Lr7Az;$#14lMh z3f4x_pVmy4-351^ccu#k6_Q@GRQk_S)IP$wySK)C2GKx8(Los5c>eF%c>cnT;e#8& zqv@QN$VTvyjo^`q$VTvEOuh%!|G>yb@Qu~?KyDenkI4S7C)M{b*uP4BFW0pHYa|x= zL$OGVgev7K%H|_+!QSA|zVI=weG6ZUioPiyZB=y&H)+OU@{+t$c(we3dI7K8MRJQ> z|J-7cxr4n;vM%0rBhMWSt$3iD{Bl3ROkGZvt`u{1rTeRU*X5c>4Nr#iY^jbTxiXS2 zqwMN9w{xuK{m7LNTN|nTTcMc+ausxSiMT@ALVPXPL+M~75m$SQ?;*71$l<@|dMJ{J zD^{I{Z|lrb*MHv?ETwoTS6fS5p)3R5q~aXreN&I*hZw5jJ@y9R`-og0#HsIrypwz% zk?Vtl>U$WR^^ad4T+YK@{QLig&%NY0jc?G-sF$V|NcN5{f7^?=s(UsZ5@4ku72$4o|Zk~N&TlT&8*`?@6&(2 zy@&qGef9MdH)pZ_uU=98r0baV>rLtPUjtjMQ|G?ZPy6OuXAY&cetZ0V>+G7PMp|RF zo~~4TJ-vIHo*}xHo-ytPJ>%g*dbHMCk6wFDkFi_nndcR-V*PP?mQlZ1Src>U+4_BM zX>XOcvbXkGIfiIf&We+)Tb*B&RT!FgYTZGF-|9hms;Wg|nzjDqI-f3vLYJ$`r+&L0lTdtwCHH#JxdW9B~V7 z4&v${?hfMeAZ|}lTpz^!DT)h(xIu_3gt$Y9ON6*Zh--wnM~I7rxJihsgt$u>T0$vq zlX~z{5%)>iTd#Ba_O7L@;N1M34bGY@PUJ$Ii}1)C{m2~s8*z?)^4{4iJC5|> zDsfCT)=NaGavLcYxur{hXzSNQRZrsJMJ3-=Ozxch&3Gb;0L^)~8SvhAI`WAc(& zD%>ao<;HP-uiTk0o_N#AE3m>pse9MJyN^HPp4`god9U6A|CC}S0#i#2_0K3-(lg`B zv;Ox_jR?&Aq@sK6)Aa)DqH?;|-G0KeezVuTVZ&_CwuhqK+b7lZ>}Z(Ay|YD@z^+n{ z`*)W)7T6Qr$-g(v8=k#~>-qP6KR>X4TSxb2JN%vl^Xj^P`eljdm-~;oPdt#p^M5zh z@Mq}rs*$ng+eXGSkGP`qKVd}sH@IR>bv823J?D+x8*gNpe3v)tlvzf$Vb#6ae$DRA zKO)h{|5;+7;J1Fe(CTA$;jtBsE7`)YMEVj&i4*yZlHWudrFNV)O0W9fD6`-*qwM5O zM!6UNXO|x~$EYySGUB?8GAedjW>@O}hF!VNc)QA-L+q-By>_)q_uAFY-f!0^IM}Fh zppjkk%sob}<;CsW_SZIQPibh>Sz5%XJG_`tZ>-CR?~&1{Kdg}5AmOmlu?lc|d*~9!(h-~XYF6iFioWP4oiyNrC8Zg;3O;ag&n>gfWkKO&leg! zkJIoWjUQqF5F>yX0>l^;#ULO?0Wl1SaX<`2QH%s)C=g?T7!1T{Acg}m9*6-!j0j># z5MxplgMt_p#IPX71u-y)kwFX%Vr&qD<15AJAcm(X#z(;b6~zcC7$U?NAqELCN{C@X zj8jnz6k?=`VyF;fg%~WvXyNtRWDn!!?_uB&BZn9|#MmJQ4>5X(;X{lcA^;E(fCvFZ z3?PC45e0}aK*T{&1Og%wiXs#cv498$L^L460TB;~fIvh9A|wzofd~pjR3O3v5f_NS zKtx7Sga#ruiXu1=(SZmLM0_9u1Q8)f7Gjv{UNs_2{2pDw>bUM0mo46i&tGHo}~<;&co$h6(a^1>_W zE{;swjdb~ngN=0gM!I~Z8T`(Q6Bz08jZE7m{3P=;jI8i1b>78EWctqapT2V?;mY~X ziHvk(o6_@ji7wwAp0}d1^?QxyscXqQ@8a;nk}c^0uDChA#VdCgrIB4?nxwH@8{N-L zF@3D;a=i74M*~}58|K;e!Yudp4vPZUC!$9n}ZBfRMhMH{aY}ws9Q%2_}Iwt8SbL^G> zWRXoda;jVdvV*G{3%D@HsZ52HyR8oZS6_Y#-9pc^=Ij(&Qn{9@6w7 z%^zX{5Ho<70tIuRU=kFP3{n2A**^Z|X6Q^Cjd6Xp^>|c88{y6+IeyB;Rn*Jr&AasO z)km^y_3zS6iT+*n)tOFqCt|_o(5ehcI#!}TBmdNH3n%CItlw1LpIqcOZ<=OYA2E-y zi)TJ#7k^0)Tske*GBd8*EVH6){a&g60s{1GWH{^ zwY;Hr+y3@u?J4(}b(YpL>khAP)*D;MjPFs@tUs)#)}V2EvthS_TBBm$nF$TgYL^{X zdwHam;<#G%8+-36@k<#P(97ujBp<1ZN#p!nxnH`PXNtE`S$X7MJeYW@Ov*bs+fB(u zhIqDI!F%ynqK)FC#m3Tcj?uq zyI%6)z5@p8UHW(LGN4o{7mp(1p%gmtNypkmS55E2$(h}`OT6XFlW%ie-b|a~^PY}M z%y-1)%fG*BT!D?x`U)-^9Vj&Oe}Tf|1_p|Z>>jx3iFN_Kcay-)9cu(`X;CUrw042O ztz|O@g6TAab8(zBn#tzjj9Fp)HS=(08BL0=w3{4VXE#eb*>1M^ef##WhTF|&zht-A z_^#3N<-T^?7KJ@S#UX@-t3yi|nLd;5%I46d%P51pgdP>;7kqAKKrTFk_Kz z-PhKb_~H>`QvJQgyM6i^lZ(dM@7*!Uo{|2TG2@q)?OE%l+Oww?wdYuO7>UoNx95&{ z$ew51V$ARVys^NY&iJ5G3uAG%wZ`J#ml#Wq%`ld&{lH$nc$&Rp!hOa^Z@ysr-nQ+J z2luvDKG4bjq9#`X@Y>>bS(+B<7*)pwOzsqfA|U*8iwS>JQ&HGS{l;reGwI_L-H4YNL< z^oaGv=pI(!nY*no`!}@?-e1%D>dw;E*9{6<-&BgVzP$E3%xQsjbM^b~E2s z%dN_|6rqKPEktl3q6-mTi15&5W!Xy(S``OqKG#{z!gQrAwsSwVh#~>MG?maiX!$9!H0-GMED`%4{-nxC!i>f0OAZF4gum6AdUgz93Tz?;v^uB0^%$n4g=ye zAdUlu_EHuHLLDap4~rv#?1>4#7l#7b8x#I0js@ae;4yJ95GMn1G!SP4aX1jC193bM z=L2y-5GSN4j!10Fg)^eykSI7MN^qJo&WSn>3gV<7jtb(eU}z&Saaz=a8-a!Qj9zZ> zcw|G6$ez)(gUBK>vatO*i^w8D2j471#ZI_!-GYu7iBIAPR6;psf;*PPxK{N%9+htK zdU@ZR?!Ns8KGL&GZ|O*q{-oYr`gC);k=k6eby)KG?2pPzsb}%Z-TE|D1IdS>wv4W# z`6a9J)`=svZLQ*+t%)Pshuv`315xRc7Mxv=rIT0wH-ghB#1foo6ly4n{xu23L-+jF znHG^WH6r;aQmP?$ifxz>qjPOrO@N>+Q%`NYh_=n|Y2T1G4r%9N3gJCOBYTOd?<2B@ zXk`64cJZf-7u~@6bjg$uTi$#=s^k`id6H5>G~h6KNv>nZ&wk)!?EV8!j z#-9Fj{sihPsYNDPi}VoyrZS3}qFfTTMYa<=u6o!aYs(^Q%dm&Y+A=45U?e3(WcnW- zCA9HHWcr`#0e&R=pVt$7C4tWQ&xwRRv{4CrF0r<3_YZTUay+W~V$>X*78k88%PN0@ z8|4GJahzw^q*=?x78&UoyK|pC?#R@@JColsSp37np9z6ghUIzBp7_)^)}-<|>~|mQ zrA@B-wEbS^dghd3Rqd%IX1J!6j_e?Tou5r7ZxjB_w&fJ__ zE@y5|oY$F~Q{GzG>>hnloMwGcX^^!z+i`30?_XJ@-2HIZi~7<%Kk3WX9@LjF-mb5h zFv9xi&4s#eY(f3w!Efj*A9!B>r2PW|qla&8#mL(6S9nFtvfz%cuH zn$xC}1%E00BrO39E(J_tW)=jh$t$s0{;nTMq_qkgm0obCUtGqFk{`Ns*H zu<%G|L`jb2`ObaPUvPTRWiktMSVFT}cMG+yQL`WcFq9}p_5fzBA zzzbIvA~HOV&_KinA~+Dyfd~&od>{e@5g~{WLBvQ=1PLNa5MhFd6AaINsif-Rxi7g? zJv{d%&dc+|b6?6^)DbXN4kC6C!Gnk%MED@$ z2N6Js2ttGqB8G}0h!9bPmmTO3q2zgpB}6bGq6raBS|#EM5m1PTLWC3|rZ6-oLqwJO zmCwnTqh24GlM$JdLA!~}$@r5a@rZ*I#~FR~4)T&CJ3G_HM-__MLjzXPctRTvlb7Us zpH7lrP**eJ$A9>#J;AE!vdn_^#HV|EnY4)$yEvkL%r(ylM$|dHE7$!Xv)DViRyD0> zuX?y(;M1A|J!@{h*SqG#%l3v7pL;gG*3X%(ZtXO-yj#xW_kLh({a-fEHqTqe_WOVG z?1+Ed*juD=VDI63?MzuV1v33I+KB#fP9SE-KqK?gLV?)#3))#G*Ysq4;jA5roRc>E z{g*CGPIpm;#k5grQi`H8WXu%WL?gJF#$Q6oMmrL73eVRL2EFp26EI77ES8;DJ)Xib z79Wa)lje6P1;`Q>^S8s(yHzEXF^3clnTYABY71QugN7J2#IPa84KZ-Vq)7Ghk?CXV z?_m7AE*zQWP<4cW#}NaFASj9`K!gDz4vHcW5Rrfg1!QRp+$@3t5e(n#h(qBUzQCbeGJ;%v${Up>dY-&WYh%ca-3#aKiubypBp>{q zF2AF$=IxHH@vAX*=f=RePdC`_eBknoA92o@U=<2DeY>+flR8#6-fdC9v$l6t`@H^B z^PuVP)7e!0r!BVG+v`>|cQo6k?JRuK*j4Hcd)N0~b5Hc^+NsJ5?NfVK1Hdv=hWzRat3h60t1j4`(w zneyf_GVQBkM4!xM#;nZZ&AjXX%-D&?yjd3QF|$6s)tl}04^6Ghd~fza|Yih>?EU8?m2OV$0BvT7ejqCTY!JkfC*nq36jfQs~r8F+{z7&l7uc zw#`Y_Gt0$euzxn(OMBksq}XA|@~>#>O2~Q%pN!?()lN59F?B2%V$BeXhFCSkvSGMG zb(Z=)R?g#CI>g#xsvU!3{rnyUfT4~-Q3C3y0YniXssK?2MNtQcLO@hPQIrCr7K)-6 z5Y>Pv2UP080SZD96#*y-L`@)y0#Ox+vOv@YqA(DZQ52s z2B~nP43ZniYR>uO0euT@*xcH)(f5rfchLjhJUKUe^QQgCoA>8LZ@#Z0vDb|ldj+?c z3GI%Q{;xQarP$qRUUDx3)UuPHTJFUrnBikWsHSoYZG+1T7_R0%mA<$Xn=Ua#n-7bR zg*0JEGln!}{vyp8(xf5HT2Y!dq0sN@*+Jw%p!MV5PE4}Z#Xue8o`)W1TA!te2i zCFwF-`hAnhA5}5`V7@dpBG{kkHPkl1osILh0aoj;W72r8 z*H*wzdd zFUZOKFP)+hmEjUuqLU)1^Pdrpb!4*h-!p52ca;u>AH+UgX(~F~esJw4MSPyjc76g`1x z3Pe|6xcj}ds)xGYMQ8YZcs_FrRS(Z+E^6@m@Oi1|6kE271q4~`BsXCg(nn7kqf#> z3C}u-%x~uVC_DMEy3#KU((j`8ukd^qJB|)%!khld2oT ztEzgx*0mM;_sFX_pkfilfeEJ+|IBXxh>yHFA9=}vgNLh`toT(;R&|V6B2$v z9i^HhA;tEEPj9!#w+7PAAZ-oO-V~+HLE0Up?ZIGf1==8W+M%MfMM!&8lr{-zmyou} zNByUDr38}+U6_j@lvGICJ)fJl4{86f%!1Dp%TC^;ST2&A!RC8ODL2D^*)C&9YF9bN z^?A=PqFQAANxmV{+&S4FTJ{~#weO=UK@IM~Rj(f3VDge)D%>bT<;HQA_Z}^>SgkTS zFxsE_bhkk4iq&psmC2X>Y{LqAv`6mnXYYE}lcP<*owH^BK(5Lw-MNc??8%dJvO90u zcRhK39`4Tf)w7=b+aGWj_@t+&;Id(UCzVYPzmv+QsozOuQ`+yOvWfMpR5k^V`ip1& zF;F6XW_O7bF`klN|LAto*=%u_S+LntcJf?zxiN{J^21(rR~R_j6W8q#cg0S#1C?5i z@>i~72C9@B;ICS^e;|_nF0V#NM>t0)$AHiv`=B;B>q&F4f0Z`m=w9=|b2o0pnT zytUGNa`rpsQ$r@3Lth?hhG+d<*->Z~U`iPUuKqFUC~Qhw6pto;P&}QQ$HzU7;LDN^ zJu5erYBxfPZ5vlX`{qqTiyfq$Q>U#%+B*y{cKA~Lp0>~9w10>VK_5raGh@C)e1!6BSoEE5us)y48HC6R+TA8E><(gk5c`AJAjA$Kwg|CDh)qK55@MS$lHab0$@dW1;O4Kp?7T8H z3qR|hplg>Iy&lmvJ}SpFFD*%3{I$A+!{jCT>Vuc$7va?hCBAZv-SN0*?FTJA=dCUX z?jFwWEca*BzMrF;KTK<({rF}b?dbF6wPS;C((DH`?Wgup+W)h69)M94e;eKap@g<{ z2<@bILJx=#2#|ytS}0OB^v)3=0#X*lf}*a9opK;5s9;dUAfOQi15!ehCb$+5QRFNr zBIWx%bGb_>f#@IoP;cPw*}c8o?d|^FcV=g&{21}0{!^nb^`9&6)z1{$r2nG3tzTPk$NU)ppb@X{x_|Lkjb#rs(IHY9oI-_VdGc~s@AXK(5Bx$SR6azSqsxW$Sn z|Ct`~{c$}i>-&1tj{is_lEBNGh}?KBTTX68b|0i)i&i&tiJlJ zqQ5Q43p%dRZsjYA{t@Of5|GZTRPwK)z*Nbjm{tuRXXp` zn#J@feeL31vcXro=%15tu1-_5PGiRWt7-xLa}vq`Y|D$OdbJ%(!d1PRe@?=6D*LS8 z@3TQ%qLwtD@0DRsXONHkw|&oBM`KdBFr8lJRQ zs6Gmp`M1^F3K6m*NotEy+qGsqScNn+qOp-mTn4dRgldH{QIDU6qjsKDL|3dcM+=-U z`hsW-UOA-#dgJvQR%c{zpAbFr_ui4c&?W0=Q&IE@(I`Zx&^yu>dSxBW^6UIl0{91N zB@X;uX8r-y9CSOlYz(06sq5FCFz2s+)oaFL$*Pei9T%j|-ebVNWieb&jehDY-WvTY zZ8^O!%kp(ACH5ud4XCp6UIJGYgxbfjm_Fr~6&@t|;IpjyyDVIL|HVbKAGzpypv`pG z$FnZ3`1*&V$*&JGwhkB^eXW8}iZ#c1bNafJ&?@B#l17&e%*tmfnX0c#W(M=eJ!l!&zG{ohLpEj%xf)p$iY)d3^WB=-;CnN%P&R z#G{5b@$~3Xuc?jpyg6K(6GzHNWL|YJj!ORwX&>eeu>-6K1 zE?1J!FbN$iik6|TAJ5GiB1Lph`lAh#@C5!2Ux0W6#2+9Y0r3flS3vv%;u#R%fOrSQ zKOnc`A-Cie<+eQJ*1V$Jo`-F}^xs$EI1EpoY{3yn{(<*Z{JzPR;x&Eq292`qCOrZg zjZtS_l~AJ8r6+;lP3do&ESDF3w@v=^knl9x{ws%sAM=DWNA8L4oUNOy9aO7_ zGw9>S?mYP#JJke4U)gRo0nzpgPJKeKv%reaoCUj{clsNF|GRGgU<%%UsxBzwA>q?H zer3K{_sx5!^yFHN+S00nRAEc%ay+l3y?$9Wk^BXU=PzX;gYuDF%=ju=UrAjqK>4Ow zl@slubNx&w{M(0y_YNudPaPUwT!tf$(?HxtQ5*;2I*Q^v5cg5^&P*gO#JX>0B5@{0-qb4s_Ll{)X_kz!)*<$4XN*Us)kubOMO9e(3NguW(p7?S7yTGd-~{y+MYi8!M5t7Un2|wGWRNo__l88J>Rniw#dd{d)}6Pd{#s zt@`PA8EJd^>36UjUg&0rmK`I!9kpYD-S*2#cDt1` zY=(;H@W@#A49Sk=c9!R#FK{@4Idf#WtX|c(@$y%*=g1~!x7N=bc&WRQWf^5f&ZvyX zqQ+@Szs#BTyvNgrUFvb<72Z!_gAr$|htyYtuQ1+<=MqD1O!3hwWl-+8=82`8;TvSHf*3&wj2di~or*jDu zP0|g=Kat=erFA|(Vz8dp`TRY#p4Rz%v06{-e14Bw_jNv(Ak!rII-g6hv7XlXyn|XN z@OYizQu1j9UU7NTf@YquI5>eXsc zE2Kt;Iw7#O43f94N8NymE8BAVRpGKF*T|Qp^o2`*rxv-FOaD0f#&!6&j@kbYZZw`j zUBNYDn7V>~P2G`@4q7m?Z8CN(o~s&y^@vEPiJ6#LKHp=k8qrx-i!q{VR_(EM$+ zKCtgLwLYlqvub_t9V^xPzd9@b2m8}?E3>zSzYkM|7k=$s+G?VTW0h9XaQ=ObI@Zh&M{mD$zn%E3&nsFrGM zPZhPNGFzU#uTZ`1tMJZ~R)O6>Rbu-puzl6n8DvP;JdtETw@&4C6*tF&pnwDh%&77@ zt+M)CC-3tQ*8QqFUTwd;PqE#~hZV1^tnSvnw88Nrkl`&I%xRU?2eM8H=y{wD@Orw+ z>bTemW8;-|b-(H|B7HO3cJgIr3Ur+jEbWyLDn}Vr_DdR#%OJ3VWaBZk;su^=$Pn zd)j34EaOr8jFR_Yh+XAz{WjR1ri5~<&u5eD4X@sG}hdCiZ1ijNu5=^Y$ zs60=A@!hvh+v-%Cm0)GR(rk5SH0x>i052banjmI7feZ;|NI*k^8WPx~KiZc1-#?Rb zKa=C~pAnjOl7#Ii_Xo5|AU3jx#|iOmqUMx$XjUEynkyg(3XK00_ycSrs7VfC<f}_B|)6oUHH@6FQ$emKS!EJVt8mCf<7D{p!%d<13*iQ*&@h=yfCH6dS27hpm zS#tgB(&Ejfm7f2YR%Y%jt?bnCnq$-;?Y2JMwQ}v-XyuzWl1hOpQX!DO7w;dKnkepW znVRU@y?ForORG^9!+JCA$Um|9jHd}_KsL|6tGbJ%zOJ_3{2uUf(e$ar9G8I7{8KI* zo%U-p(Be4wJ44(8 zogq8}FJ%ez{JW}>KlOFBHD|7y{m<)rC5NR|o{9U3?}_{A%Ik_KS5%d1jOr~OnEDFt z7nOkns_L*b3zXFxbgbPvadbe#rjHYqo_4{lSxlb-WrYWcrW-8hHRb8~GIP}!X#NhV z|E>w`d+Y`_%5^2S8$2QN|nN&HnC-{)=_uz<;scRdOLsyQQYMm!4)B^d!5yU)fDw z^BGf_E3Z*JS1Me!s9RR)uShs}%A?4F#kgwLp>N_f+D?9Xq+uvg7(-hoFKYt@}g$B%8FobZ;tb@S6#kG(bFlkPID1adzYK@ll3TTT^9A0lF}LIz zwLYOK&%R7q;$6n1^E}JdxVkdeRN2(i-X--`ue_4}RJpL_s8W!1v+qOYOqqx?x;G)@2Db*u7il zCU8dA_0N-4w*?EGMhSNMs>)n z>V9LqhB4mYg8$14Uj&4X;-bh?-e}RD#q=rt1^>OWL0#}a^-BF=$)oRgdhZTwPyEKp zS*5W%=jmofP~aqYP|7$v_cxuKc~(and3TR==bKl}$e(atMy|?Z6tIrU$W`APg`7#w z!ndzAibSq;7A^FKQLN5Bcd_$3>=N2MXNkl8jo@vsyGyR$pqF}WrCxgeBE8I9OD{Wh zrtTOOr{C6RpkA(hH@$q*)_R2+4RyMs(G`tuXmmlN`x$dGF&`6iF){vG(+QmOtq697;V2lsh_=ZSSR~~o?-Tfk#+1%q2=t&RSMZ370+fT zuYbbWde^k8>ohuA#!YM3o%?rprSSIlW#ftO{m!WN;pGjzYt4Ql+B5jl#AwgpOSD8t zU#~GjYj|Ot^kKWt3_a3S#=RM4HrdcX#=B{2HhrnHdB?gMX0!Y1na!WiXNCNtXFDH6O(%d78J= zGU1Av40%P$8=m?Px#X5QL3x&%k22h|)5>|Dy{~vbL6uCTbkb5Ds`;y8o*)(lu_=gE zLF|fzWkGCmgqF5rt7D-qm#2!glBng`&VU;B8l7wZFuuX_{lCV#Rg_5vQh?PR@ zR8cGyVyh5qh1e^^Vj(t5!fGLQOTuy?woAf#N!Tw53npR1B&?W(9V?0@ldxq)v1StX z46$euHVv_Ah+RW08~SZKQ?`9oolN@CGv;&)3n;iu9Zq!z=<4AoC5xeHh)Ut9%Z2~) z;U_1(XI9;N&ROllTes(K%&*>g8gb=u9DOU9zi%s)@x-I@jmSn_Pi@4Y>BIqacf zJbPbB>$~e2h*C-eA~ng~Q{PFx?ir5K)0?+?NL|Ul$-+G;eQ&i4a&t~K50dY6lS|$@ z{d$9KcJ2=kN+}`5-w{@j(1QMczJIKrFJaGdn;|iAWvBIjNa&~a0{*mVgMdD>lH}(U z^z{PnK5BC8n6dHWM=C?Sx*u?Qg-nvaWW9_jPuHA(bMZoZ*Rc!kn|7%v-6|`eY3aIF zKVZ-0p})GBY3@fqaECSKrLH<{NN!GbGdI8kysbOZ8GAr#^UT!CMDOL|O`=q{o{-SG zMh&yLz7&5Y$0*=^_Pio_LJ?l^+zIEIS1zlI_Fmvod`N4(o_4Xv7fQn;9{8$i(C9c_%xaqzcryER+5 z{r4R1s*9uA^?a8{GNkpMd&&jWf88k|o3C43?3nQbW8<8$6NaUZW8FTAU{0UX-^9C1 zHn5)8l&7u5Mrd2V7^i*wYkO_m#;#hC^50rT3w>%8%evhv_S3r-!>^UtNyMyUdpnir}3OBBmj64T)_OY5ZFYU#Y4T!E+-Vff@CN$u-nyNNgU7W|X;7`-19J0cLv|Ju6s|?sb6QjR9+bv&^NNu>G z$`AgT7(HI%pNUb5SQn3_xG8E~n)Rj=YtuHp;RXQ%o>c2u=J!_2+VU>NZ1={i?Sa*w zP|WV1NJ8g$`P&Nm+X@l~|LL}Z{)r^6*%@+6tBwH`m;FX~sKRB7ZY-ux=?j-Mu}CXi z<|(E|Bba}1rL|z`Tb8$D4#`lM=sS`>sW0&-=4WAdiD9XqO5Zyqu1JMuk_K!qItfM8E>HAB* zF_Ma^zej8QJ$i#^4x&4V_8|I$Xpn=14k22E{+h0J>bTVJ;yFGIN-t3B8TGUL_Yb~1 z$|5cpiVZRx8)Qf}MgL?PI>+I!sOkE*dFpj5z;+-1BB1)bw>XxnjMDz9GD<<&#Dhd_ zKFgI%d79s;Z1m!L+di}8hYBenfe<+~%+C1`tFY#&y_rb2I97+K)dP6ISf*>k_C<&q_h@v2>f;a3}AWCD$ zZk<*y(pX5+)gv=11JSA+D`v92>b{(c)js@9vHI$hiZzxVR;)R1n_{im8x(6#Sg9B? zXpv%_z8`C(w4wZ0sP(k|1lKQ3-~#*sP5^NOh$BE;0pbi0cYrtq#3dk3p(t(vaSTOq z4Ty6pSBOTEl$$;i-Ve zQM>sZRr?BF)G5otxu?3u6gggN-2x=5m2Lr&)n2~LFi2_dA=C792&gY?zz29T#tia6 zwqJGr$jdl~kn_l!IG2#~2|1^Va$X_l7IJ2@A{6@7N@%{tP+yw^|IR zHRIot@K!*~n2oZZY0da!#*P{~c4%DeAZ1n2?fDhyQ*K$|L3&XhEC-wN^z5=~DO6BB zFO^eQR_MB(Tca%=yg_?u+EgPs{;2L9k%lg#J0GvFr_6pw+x6t*&fO2LGxiL)#SC)qd>VOZ#bF8SUpLw`*snH8Fn)F0JKV+TG0eP#!J+>_(a&WNH@1q6GJ-LNUkAQcUiO0{~#?B@%Bcz z0e!>u1^snP>KahQC3fY(X?kWEV;rH91$zniO^QhP+w-qjk_opT9%?5DS3V0KDPVo>&9#!yX_O0kH|_ ztBV%9VEtNk(Y%g*D2jzZY(!D41Y#!;OM%#mqF4*WULY0&u^EWfKb~jX5UP@9WEU3Gr}Vc&=@jB?HsGIm&_DBFCU4hg zrh$Out)ax7l%_l#LFCy}5=;NgR?jW{)UuYU6#65#^nEc*F`!>lcO)d1;SGyH-dpmE z=c?k%?v7!~e*B$7{GCGxUjHrg-&FCG@lZJ)f5k2HfAY+z*UgJ}Hnan(2TtL*sl52= z!5icvlmX;b;(aVvFy-l$5-)@>_x9FTzP{|1_>K*qIB(AFaGAhe#`&upSlLC^9`q0L!143n4j-p;92j~A z-lDg|{SJ7eX$g0Ct{4#6nbJYY-m%WHabu?pn>^SNJ7$n$aP0UAj`kCW%198N(V@a4 zIn(Kre*}pCSlc`Q2oO>P@Q(nYtlvM!@PjJr^UpDS3(PSrb@{&LMmM-aoZ2Yqro8Jf z9sy!;-+;0!_L1Xqg`dHU0O>Pi?iou(D5+*h$n^#>_q@sTe8pb{HI=_@780agF<$O9 zzCV3!|Bv!vtQRol>G?`4T+e?J=$OAV#I<1Q2d;(l7q}KZ9qe-5`;KFA{CU@s!Sfw2 z+@0)N+A-1fV)Ne}FI6-gFIV2|SXQluW7)T7U9V_+T(9ga;&}BNx8t>sMmbh&+3i^Q za!1GOuF0;1`$HV79#3(-;cV}EGwu!7>gZaox1xGG)`aM;x9i5c67&D)T3fKEYwhX1 zu6MrC9P1AJ;8=gShhszH9>=?@F1p@(<}F9k^CcbcPkP$1amoe92R$b{KJ2{IwJG#Y z$L1#QJ3i|9iR+_7xm;U|RpSo=P+^-ns!=J@1dR@Z@Ak2nte_N3!bKBwc*x8FGq zA1mhi^y3|lBOm_eI=cF#>$8 z>zrAgn;qGz_H+bBFLPwi)x?n_7yLEk}o=f+#Mac-w1Z)NeOY}eeAp| zUqV4g{&7cL`m?oM1v)3W3QpEth3YJE74G??OLgE3-K>WDDqeh%YOBnGjkj0=DvptA2Bbv zsl@1FlBBtg)K*Db5ASUz@9We`wUoXX5wMjk&}hfoW+%gHr)%0J)k?vAbA1f4O+~Rz zhe>>Oh05L<^>JH*~077wv` zh}A>v9%A{5V*3#5R}}k)WC4(D0Fo6zvI9t#0Ld00S%acv50ESZl1)Ie3P^ULC|QQ0 zWE+sILs7C1NEV_f*$5;nQIzZilBGbh6-d?s$zC8?3?!R@WHpfN29o7KvK>g)1Id0M zSr8-}Qk1L+k{v;^BuKUd$(kV96C{g*WK)o=3X)wxvMflp1QCDcf(k+QPvqb6PA?h6#Ax@lWdiB-}G{l zy|V6`UQV)E)_v2 zh5uS|wYsMA-;K#%PqCcTS{^JHy?6LP zYiox(AzKeW5%O`nag%ntj#_(0?l<>7(KB&h%Y@KR#y3ga->gOAfm(GF5B%0R@ld|P ziH8oBOgwz*m&8vKFC-q>ejxGalHkzK)|?5oXPyuJ{HZNfzUVYO^vn2Ht9(_vUFfm? zA1ynczh>yy&6h9x`fOC$L3D)29=^Paaj}^j*6W z-OD;w`Ju;~i9bFNQst+xl+d4t6|8c`@kZz`5kFV?wc_;9vqfU7{1#}0{&pt3%DH1L zLw`Tof7$sR{Sq&{+hWj7(FTxWC9zO1^d>%H3IH4Uw$O)HyA*G|wk zcL>%#x}&n=qeI0Kwp0ptZTX;*F`%*Q%h87%U$rdhI@V#mdYZU&K~3pLe3)OOhV2k-FI7FB8YXO2og!qcUxW} ziglt25?PSwf*ji8e^YL84AkA`cRMkO+iCAtVwZ(Flo1NK`^16Z&q;ON6rS zyDcw~%DV5iyhJSPzT5H=xvcwc%S!~a?z=7j{~pQLF3SgWh*065!4qwQ=<-l_)%Sji0};!g$KS@jKeUv(vo>cnD3DXVPYk!Q~IU+0G$ zKawy*b|N5478!)}EB>ZUGzGG5hL+RgA`RsCHq6Yg^?fkEiVx@0_yU-zFJY9lhRtd= z4AQ2TenWqw>B9a0$%qX^qhxc2bkW2?fC=rL+fqEu>1q3PjYd&dXP`!Q!@TUPF{m% zH5&wJ%>s7^Oxvyos8T!JHB%9n^MOIfXL~=s-g&-E2IW)+S3RWuAKqa;E&UE({fX>w z{bn^~g5p^Xx(5txSBP2HL-~ab)Gw4FQ{@-R*-2-_nL0zh?~#wZ#CNene4nCx zC**q-<-1{Kzd!AKj(Ft7fDwb!etfUgi*i2g>h!NQj)}WB2J~35iC?T@pbK?J877}` zJhrW|&p7IN&LZRET>Xh@=WY132I+Npjea3&cT%4Q38_gb_1vgw$-561 zOwPA%No4*BHN*5r!b0>@O~MLvADUdSb=$;3jlN4RT(d}G6-Rt>mBR}XtA0E`x!Sws z605(K5?NzWOlZwVvL@Fu=Oor1+bA+5c0*{L=n=_vTe=hL)jgeDzv9Hi28GK} zwBebUbY>ABA*C{k=Q^&}*Z|@Cl_tMPd_Rr=>>~Q~EksYVp9@=TxiR9=z z$0T-cH#)h?9X};@t+6<=TiME?-Sh5Ej?sE2#+=R>+2iv^LVNCdII`D=g+hD3k(7Mr zi)|A7Jn?g6-}|P7_M2Eax&P1=iAImtl4IM}O&kzvM-Hq$By>=4q2$4No=qJ5dqm`r zQ`#~t? zjb02LU#Uy-gyIJhC+4^>a^kr>q46iyCf{|qdE%sxnccN4 zPcy40P9JkHazSH) z6}u@DuBS@Klo}bwxqjvfFcTNP|QhQAor=q7D*yiV}U02!uo-BoZOf2#H8V ziAqRhLZTBAp^zwrL@Fd&ArT9ST1ezVq8AdukSK;kG9;Q6C88lw4T)?>bVDK>66KIc zheSIh;vrEFiF`=(Llgi}0YnK9H9!;rQ3XU95OqKl0#OM>DG;?l6a!HWL^%-kKokT~ zk)kLGq9%xm zQ7A;E5T!!Y3Q;UXwGib()C*BCM8yy#D~g&SiiW5fqHKt|Aqt169HMlH+98UEs2-Y~ z`>FMr;a{osS#=*%@4u&FG4=l0g*K_}_hxUWw%_~nS+)JXucxc+_wS#k)*slKRjtoS zT&3Rs;H!<)`yYDtE46*@+!1Q~!*>@~+aDRdP;Gy-?*g@MMVD9Wk2OnC?|-~bjC%hQ zj%;fCyn+v^?N0_YQrn;WX@lDS)R*hk`qQ7ZRO`=t=vME4_U(A}{^wpQueLw`%yPAT z{{21F_63uVsO<}ff2!6O^%vYW?M1wblEVeejlg|ME8msO_&TJ)yS0`ovRe`)l`=QrlNd*rK+t9NI~3 zf4xUXwVn{QSFNuKou%IYM)jQP{co0dOKo4B=XSMy^|^1<_P0)rRomAb8Kc(U-ubgy zPkeW=djHy0mDT&-S+q}WU-$T(YWw<`Io0+J;~!Dm-yQg{T7NI5kXlb_^}c%l`;8*h z`!`nnS#AHI_!PDM!yHxA_78tsskU$WW`$bc{AoS4{?S%jy+3)w5cU2ouN79?w=R56 zZU6Y;2(^9NjO}Xs_OaX4`i=oz)cVfOntFdq_ z-+SgewZ88}oLc{6e_8eZ{aapC?>~^(Rc$}`%0adL(6jfc?T6>)QQJSAnp>?O8S|K0 zKiapsdjDsgHvKKRw|S!SCGEtCPANI3K4j;-kdTt= zmy<@&OZ8F;op{AA?8s#Y|2Dxc`EV(_)VpWx(sO=DDYNa8QPy}i+A(XDaa+_|DdqYt zw97mCMpx(^VpPu^o8gl|tYCa!f*XqAK zy7t{w?U2Y#DRm;BvgakVb_O^@f9Y>F{`5Dy zNy;hb?JMszn!ez2-r;(~Xm-ymXY;9x?6C0-oh_o58ZFyDs)a{(a<-~5PHSD}7k8UH zU9~pf4Rl9**FcN>`iwJbTQRNeyYt=cUj0pLKR1`V!;?kKj`u(B>@?w5GrC_(cjs;g z%`T&&oL%d$GrP5~?(AN8ff-XHuQTT78D`HSRoy-J#+tp(wRax0Od!D|yIWx2RUKKrK)`{xaj_ z(-7s}m^B;EL9_(X6GT%GT|u-3(HBHx5S>A^2GJWta}eDriuNG-gJ=+OJVf^p?L+hr@c@VqK)e9r2M|wC6kmXN1H>O7Viv_zA>Q6vbB{-l8b}0`VA#&p^Be;x`b_f%p!@dm#P;@gRr~LA;2BA3;2c zgfBt7Nm2X>;!z}g3gT5H{0ib(Bzz0vT@e3*co@XTAYKOXGl-`_d=27l5Pwq?kAwJ} zqIey|?;xHBy%WXYeI)!3;(;W55aNX-{1D=aBzzI#jU@aL;*k)aR1~j-_$9de?#F=Z>6^o{$Tm4$~Yu9b~M|!$(NW4jEKgbL;-IS*%@~^&_4TY*NS=W zAoqPnZu?$mo`Xy5yh%fy`PR<1^Dn>0tv@@&E-+`XyWr$VyU_3mci~>u>>^QB-9;Pc zv5QsB?Ji!fs!<~6DR*#|+=g!=qs#I>>2fa>iRw9^jN!3vk}y_m`gz`6c`fzXtM)6y;Yzei`J~L4G0RS3-U%hqKFr#B^gU=P~7Jf3qyk{ik}l51c*c zJh=UK_u(9x`|yg=?oW?@;XX3=lH1pjRMYOE)?b_JqCQ_*x8?LatFnTeq}0}IQfsSa z)LZD9JHd$>ym6_@y4e}l*&)bIL3RwXbBeNqke!5odPjp~uWL5W%mL)5dlMDOcxZ7` zp58yzAZ5$RAY*5nneI#Xm5i=U=+vjqmqG{CmJOM5PXV?NiFdf4(@y3`|# z@urt0X@%7t>N<6_>UFr^)>x}qr>-p5&CG2q->z^NrZ+6^fb0@vx1icJ7G(F>7j_ZO zke6=4Zpy`2ox06rr~l}2bjUss69pFk_sIMU%dap#pR`;5{OiH?vD(d@$Chui zzwNl$UG(vmMzNf~I*XmFZWljU&0XSfe+X^pzA{R!p5iXOsF+>miQLYzv%WVR z&bH3mVyD~Xy6kk8ZiV#P*ArLec%bvyoG)N9qyS--&uJ9@#hDr@dCe6^X{ zpebwmhD~Z&Ug5uJrH||F60114l?9GLk>2{R~EXN2i-G=W@dwrV^4ZO9xUg|Xy&=(T;r^(W}B0_ z6c|>8ITZ3P9cblyC|J)wyS1fHXlNA}RM{%nt+-XFLo2;-y>pftfvV7_Y6PlcKfUW2 zfohM-GXmB64W1FG<}dP$Ks9xyX9TJ~13e>9HErz~fvQwxU5!8$7_LU3s&cHNX9TKE zIXoj!E&awb0@dt~JtI&JTHzmo>L!ms6`);KXz^Xo|J|=D%K8+M0l+G#;6eivhEwBMuf<^ zZ;TodB%6ip(MHQ=wU|IK#Q6s`--8V*!2$*%>7&Rhf z*8OADjL|s`{xNF0s^f4=&Gh|GGR7cr$eMNV%G7aTyw}RLrRnL7ub(LHd#X(|?a9>T z;xDfG#auqQlk@c-r@Ge+8RUGsq^>0f{pkMqY1G^{)$d)=yNfp`ZA%o_;b%KKn9q{m$O*1oRiU%t|zKl_+oV2MH&IZ&sOAXI*6%AGRFv)g8CZ++dZ9 z$?GUT;*egU!D&auw(IpuMRqwVS6ir8zIe)2HOSPf9^L7xc5;AT{oPfr8hfT&H5WeN zs`aK})t)}l74k$&tIp8J9d*Z7ut5BHJ$la7{P~CVu(6-ITFhQ1g{^A*eb zZraP$C0@6>mb%^5t^1EwxAUc4F%9-wF~^!XdY1V?@42azqu0efdhewd9d{mmOYbw= zcJzJsX}#Z|jgI~cC+kLsqpsNdpR@+lOmYnzdY3gQ?-JMGh+fvA`lovWDuc2#0C)@M0610LByvh0)&VVB1DK7A%cX65+Y29 zI3WUsh*VL83K6TK2o@q*h;Sj|g$S4*j));bhKLy=Xo#pG!iI<&B5;VvAwq|U9U^#$ z=pn*~h#z7Aiedr~BY>Cz#1J5+05JxLIY0~oViFLefS3iuFd(J@F%CsB4~T&%iitps z1Y#x-LxGqI#8@Ea0x=kf$v}(-Vm1)NftU`&cp&BjF(5@TA&3z{%m`vg5L1E}6U3Y# z1_d!Gh*3ez3Sw9g(}EZm#JnH|rYI%`F)~FlGl-!5su5JOcIQ-v5S#9Sc;3o%)U(L&4?Vz>~~g%~fyd?5y`C?*UsVns1yh#@PADMO4I zV$KkQhL|+Os3B$z|Mi9)ByJumZcdr0Zmke0Gu5e8r&gwWQgVz)edU447k+Wg2`Md& zvDXZVG2RZ}Z6xMtXe3^^PfASV49uAh({+Z<*6WThYSxPwqSx+QFf(>grUNbk5Jo7QPk z2|ar5ajkP~1FOrZWUXt9Vpg~IuV~#JzgaOg=4w5(!&c8C%gmnk2CLVZ2hH9|i>y2M zjWYWzU$6IltE1U(&O*KalOd)t+|*;IchCkz4bTVntE~;H+DaeXtbjJ8pkWOy{gXEI z$ClQx3;VR;yDL~Dj=Zgnd?ULxYV#g*^kXNiF)zJkjvcqva^Cl}Ij;BDdfbr7=J+OC z^a*Y5G$#hXs>j!!q{W|mSf7-?w>Ig}Sbg&8rrMNuI_r1uETc_*VYD^vbqUgYI$1Lw z`9e$W!7jDYf5AWLR@pSIWbmp~Z>#cwlnh>Vc}fPJUKx}O!c$8J9Wr-I#}_o@qy!Em zcpw1;2_i@!DM~Ow0t$M9iWqd7JQG}y0D}Y>B+wwi1_?Mw&_M!EQGyQ=fFyzt5{M*% z5fYFjf)Wy#B!UwXppYPi1S%w0Apr{sT1en3O7KDgSW$u)63CEXh6FT;poRoCiQt9= zIEf&K1UiXehXg!{poauLiQtC_Kv6^h5duUE5J5mh0TBj791wv(L;?{C39&!~LqaqV z;gApyL_mrnB8ZSkhzTMn5~6|#3nDIvz#t-n2n`}Oh~OZig9r~IK8OGnMT8I`DvB5( zf+QhIh%iZr6CzL&B89iCP=iFdjYP3EI@HJcy;sedxn|~fdD8${kh;r^bAU}p6O7GI z*N@)P{Rex?$s^G_vuw6^z8w>N=-DFn;rM$}>I{t+(dKm4i|8q0J?U&vxrvB$o3l}l zQX7MdVxCCE*_tY2qOUtw$+|%!AAuZGPxIMW7mDzt)yEK^q zAkURq!`cKc8s%B%o~Jic2$u{YTrL+g(a+EqN0|E`%@l|+{*E|<#G0bS8zklwCGH@x z2Z=udnHVGyhmcq#5s#3VBoUX8*d!63iV~wF;uI3Aka&f}EF^9ru?vY`NDM>b7!u2n zc!tC@B(5Q`4T*0>iE$Eft|+liBHke}Pa^Iiu}>oYAsQf|1BezNdVpvGq6>&NAo_r4 z1fml~(F#N_5Y0ez1JMo%{XjHCLProSkjszhPSGo zgQUdQP{jQ|<{kXR0C`B&(*jGPQi_q8aEfdEmCDO9lXH<%@gO}Z50>?XFEz0it;=D$ z?ki<2e(oFd<2iXORm&S&TswDmqW=4dp4#~XJ@gC7O|*-NjrB{*ME%c{)C2CnsAak9 zf}V9;u$e8kgcTTl-pn5MyOks4sF~y8239UT$;`E4l^*0?V&=9NTX_z?Cly5ZSozj2 zmWm;lu0MN^R0z$|3r-#^6+wga!o4D-0;r8%v~g9b_^F~7FW1^Ekt;|K&QjS7{;`r( z@{3$%sogoP((iw3mRWVuD!X{Q>4-0_-!}7gvt0K}difFCqyp!2y<*#yQgQQvUb&j3 zRlfL{RW&G1t9tZ(tJ+EFg#7LcR*gMQv*yBkty*t(F>6mBYK1&eKl9gSo4?m@KfEr} z*JiDM+N4L+oT^3ad0CIj+fR#nbB^BjRG3tZylA!mq>tHQ>it&7HO#fDqI^XSV`p|M-< z`|cd6$XKoSUpP`KFjB18`|mdg)O^DlICQuK{*5tGC=9Gntt-BBOG^b9#$C{Sd#GKx5ur=eEQl`w-BR5gx z=~nuuWF}&hD>zL(%Qc-WtJ+=}u}U&)B-lYR><*s#UBoHBAOlfeQ%q#52nr%9h_E2y zf(Q)yYI8+stRpsv;2@%d2oEapv48+cB0_)=Nr(|5NQfvQ!i0zuB2YyUDMYA>B36iC zA)%H$86s#BqJ{{Ygt#FBCn0i(&>>=n2wqV{4-q~@{15|xm;l5G zAZ7qD1c)g>jDdtXKn#L}NkEK3QOp8j7>Z&V5aS?W9uNb8m9&!AZ7+JG>EA|j16LL5QBr59K`4p#q1!4 zrzoZeF+N2xKZpU6FhPhBk}yMvA(Ajfh%u5dM~Fc}OcG+05VM3BrlOc8#5fhjJRt_E zC?*OqQiz#C43&hbLX4G!xk3zrJ^N+FIq3m&aN$OZCgtped)4N(yz7S zt+Q3;X}{&~X`Ra%?=Ll7S)=VQHD#*QYg7Bd#n6M#+uOO!`{xi+(<0`(6GesHrZ>>jvn^TwwLX7 z2RaQ~|K$mL!^&Syy!*jc`@KgFoJe}%HT(TB@0{3p&m;B+9p|6;aG=xPRBQT)&FvpH zKFVjDNUkx~Nd9%&u-%8A3(Hmff}QKN7ww?aFB-WQp11QHc;C)D{ivNU@dZ17za(3K z=3cu%vn6)HNki>IWoFxjdq&xXFAlMbhE}(WetnNo{I*D=_(y|{;DBmI@XHZK$tZZqF7%7x^z%MagSSIGaZU9nbxQ7KDHyK>$yjmlqC zu&bQfWK`Xl-LAI%WuyA5<&7FE<`^{}3N&gxJkqE=;%g&hbO)nO+bu@jnBjK4YOfmg z8@96>1U+mtELziU_|tN`(J%S!&^-^?jraXvH+gfkefxX)jHXX?vhP^vHkysEV>h3^ z+X(B^(P+_cwb8O^h!NiGDWg@Xf=25ylZ@8C|7^6m*xQKs^TuL!| z9KX-*`Pmyrug$~k-tWyb?tJ}TqtCJgyYHhzjeZY2ZucJ>Wf;RI*s-0e8v`O^?18oO z8iT5Y+Jp0*Hii`FZVWk_+aCHuBV*Y9Q}*y(C5#bo@3coI{BDeTdX+ueI%15u>j`_T z^F709BpBm*9k%1b9yi7}-e6B~OfV*vSY*d*F-H7vGwr+VP-D`;f%fF2U}MVK*7n`Y z8`@Ks3^1n6DQ-`n)ykML?3^vi%&=EP_H2Rwum3ddg##i7?e%23ZY@rv>(;U)me-^( z0@$)7dI9lF$*f~cnZW7)q5dT#a4~FAGLUV>43trf+d_xl6{Y1*6ZHMvOT*)tG9-8wStX`Om9Ie_%*m**RmfvyU7 z$_OpqZZ#Vc_I#ngtnj75ao`#S`pXLbvI24NZ!RnF`(}s-{DW;zjcrn2rYfjYw@Lj5 zGSG?GVzbn8L2X|06%J(is-{H&J-TuXGD=Nl0~e6NraV0scwRd+AX{krMU@l06$KqH zJmmVfRTij#$dXOwjmjSQC;nxZsx3KOmoD{}VhNHIoqF=9f4vKO`BasB=SJf9(wIB8$ah`3#5sbTC*H-mf>&O^ zaNc;`e<5@0UdV8MX2`iz1JM6J#v%?=PyD5xu)fb)>Un)d#<86c`ka<$K{a+*P0i4; zH;Y#$jD$2_9xN9!<;h z-}P&OI~Qt@rF6GWvGmtY8+9|ytr~n!&sr!<+A2F z_b2&tl3X^as^}t8;+2uvyHtU3r;P|OC*TZuO^rq)-|pFyId1ku_9vIx zpS)^+3UHwnt>&&vw^NjB>qxn_PLMWZ|B)4p?VR6#xb6MH8uT`;BDKKqm*sco z4<8mgVOZ>FN7Q(VSL0Q2p-l%4Nk)lM4n?XwraV1U;04>&_%}DBpzkh_&+RGANI!vq zOP88%lQ&#euA+?Px&7%WS7oA1MJ*cz73mmx=~Cg(->VO&H>|W8^6ij4fZnm#*%Q8d zhP>u!HkZY_JCC$yL;Awrl{>|;lu57Zgam2xUK|i`uH_N=1369;CyuP$EpFn-8jfDE zPIa8Z)o1Z}-o)PWAkCEr%Y{vOTKiGh0~dBR4ZHaGxr9sGwkK(EpC$xMj84iD7L|~- zd)=gLj_L`4%{ql;*YYOh$h|%+$7iP#a$YPHmg~J;2|-8BgymlLeMp`S`@`}+kP?z_ z!P>C=!`=wd@7tGDAaY(v!69!a6{->+Qn<~tNks}go=~*X-AP4%n2=CBd*7tuyJ8Yb z9B-Z!yec%ImauY-e-A0&@vE>3C60tt z4Aqh<{`Ou-r612GRX(^lq{^=!CRN?IA)(s-my)V4S(H%Y?FW)-&YGD}>**0mwFeAL z2r=&utJAV|LS18cSiL*;htv;i7uFzmtB{6y6T=#1-lFXdF5ot z?OXCDHGObf$Q{d0Cp8^UX(X)~|&0m=i-SS{k=c!gg zm+HTSb?pNh7U zp?|l2NyhN%39Dj@%YD^oQ?5hHc0iHhfn~ z$cXvJ!bYxoBV^RnkHSVjHZNpMpXFg=rz9jen?4jauJ_{!aTQ-q8sB6>!i2y%NfU!( z5+)uSnG}C6G~upI9g-#;3Qm~(V(p|UA2bTN``!XcQ(q_%GHpz)u<5gY51G+X4^t6) zz2euOxt;Up|0esTOV3W?7LYt=^LA5~@c}&Dl;!zVH5iq5tdZ8-3<_x|k4ExHZPdUV z!}9P9n_W+|a7DVNW<8kqDhD@A=-rK6QWUwP8CI~5WOmjW+A$TXcwYih=w6L zhG-e0XNaaDx`t>QqHl=CAv#wStwZz<(L6-=5bZrw~tt_$tI(A^xf;)^Xj|5`W$=|IAWu|C$oK@laC9Lqk$ZEm@yb`uSg?%gkDsRQB!z(T>NCPBmYgm#WyXe8`rU}G{B3wxm9M6zRGry5tlBq`Db-`^shrQ( z`zU=!(=3{{U>m#S=~3{U%wUz;gf6r7a=!g0(_r8EH1;3z8z8>}@>?Lk2lAUBzYFr) zAiodt8zH|F@>?Ol7xJ4G<#$7VJLLC6jsfI2K#m2RA^ZAgjz_vG!7=?CWGS??C7-6w zZo4QJGfI@{dFZA*6^zN2R6DS70(&7P=&aHdMDBU3`IMv_AdNtzmUK;urfNxnNZd)zy^U^#;%O5>V=EWO6>9UKP zZteK|j1u9kLfn*vju)OyJpgj~&|j5<Nq?}Jl+^#kkyUjRM7_6A>) z?kC=zYp|Brn8KfWF4)?#m{AIo4eB>NS7=pI!`qA54fmfjLMzlaLf`(>Xjhz%u#y{G9H*YrjmDp?de`%RvWck5}ee^>+_KQ8nz_Bmc z12?{94DR%RJ$T8}#?aa$?4h$J8^iOrw}+2>(jIZTmOZlFUG}I0?TpdYd)Z?WYZ_y7 z-)=jf$!|EnEp5l$^@9<&^^!fI#~x$C>QY90*l9cdiHpW0$1Z!)cv}v}oA#8h8;!f| zC+(^AmKxKN?y{$sO0s9Tdf7A1FR?kq*OXIwtGWKN7?CH#l1@z$1j~}VMnroj&qQL^ zDBh+&E50*95O6lw$QeSiV_u& z$WWB%fJBI*L|dTWOWT`eihmegy;zW4ecaE{>bs;Nzhr2y$#yj% zW;QigraZqY7qhB8qg=Xj8JmgB%=bn7AihjKRO1UFU#ciy4FAxVrUVw@h9>F8aI<*8^M*rC9F7Zy)%KVc?+ozWtrc{UKt@8V?YK?l-Bwil2 zB@@NOM4~5)`9`LEY^xDFd|TW3Q+BQxxWo4gmI={s zUza_cTC840GM6q5Qa-0>Qi&JOt|DDs@+nqGS(}MOgeBfC(eIB|geM4^uWcQ?zAULZE0@Oo*w{@IK1Or&N`@;%mqk8czIPuD&{ZmP*C@ zuK3brby3kA@uaFbhB4q@tEU`fcV{o(fd5Jk^v6{&HKbWB={sEZ>^malsPOk68IA5G zw`yek_O)H-XzkW?lHJr9m6qWym^vyX(n~uh-w-0X<>kLhI8Bfw1?{_WL}4}h_)&GMYe}D$ zy;vrLFmTJO>}!ZshS|XX8e%d|K9|ZWHO#15)f!dhO4FD7wXgBF-+K-vT;rQhMh|DV6{UbohMTfQprFsZ*;)GLZg$SA+Tb_5Z|KMcNpq6Y-Dw#r z;y87I){-v}aVWo2wgta2Fy5ds_!@v}z0zPkrfgq9#rt~KP;%LP2;@QCnTAqNaL}V4*mz<}>(4&;0oNAvcitgz=uV4S3;yN!` z>(K_jmMA%GAZIl{*PWeI`dVP(=!(vQ^&GvLOtnn;SXJYAttztSVb!rU;~3{d_ZHPZ zzH)J5aDSXl#=spC!|?ppsrMTuJ7>V+qcdk})vMnvIjJ`~EoDK{!a)6~7C&a3{Gq}` zYnS$+HN5MK&edPDzTB}VHo|Vu_P#?)B?Gh{Im_GS8b|#YjcmBY(nMA7EA+W93GAh| ze9gO3FMtmoj`QP?ki$X_&5<}fTq^5+XBJAd+pDe?3AjL=yssQid96ViFe%IbAhx$l z&v`Z4mjNzuT@v}qrw0!%5ApdP-&0ow(sS8EJ+7x7+^f{}Q}9@Fe&WL?sEYxPDaV&r z3%@D`5jgqZcWi0ma-~I+NFV#5R)6L$cH}$xa_tiTLFz0M^Q}$!_+aocGqnDzvqK;I zV)mr^2WMZjcC$VGDvv!Qf0gZ;eVLs!CEK1kJjG6qo@l2;4zu0ieeGEdl8w|V6O7dF z;*8lJ_c7Amj4fIMhh@{9??rzA`e*4~$G>mtmwGv*%C!(#}eF&(7|*)6R){ z%Fb=J$<7O1XXpLA(q8bTY3J{sZ!dghrhV}fJ*UNHUgOHqKa@6>In_ zrh4V>5=l&QhnS{(n$)rUs**He`GqAtFfVRff@rxb(%i4u5?=V5cK04MaP=^z3O1@p zI)yr&RHCYi`!u}@QnF-&(p8iahLkd-q#>mZDRD@tLrNY}`j8rc)B>a?AhiLh5k;vL zNXkeY_n zHl)TOwGOFyMJY>(!2XYFKNz#AzCrbdA@!yq^}->3b>$*$ZPkW96yH-AQ*H+vN=T|D z6Z3K_@P(Xu2cJx=KWST`{?hG<4f=i?)59~;?ioH*wRhF$UJYk{yTrz-xyrmWUD-qV zH}qtqQ#RI1WV8m6UQFtMt>kuve=*5H%6 z3HVbW1-+&zYfk4aPhqtu?T>=^y@>x>8zaQPEXunA1vA3saZ5&S>1DGrBU7U2xZu zcX5yB{6HQ!1gzv?2==1Siw={a88>O8Iz7Ty)mfeT3KsdsDs)pm%EtdCMrBG=E!8#T zE!nD^&|hpa*qs^({VUP>I6p3*rO%3re4-0n(#P>2JYD!-cA#eUYSg+fhpQ)4KA$CQ z@x~u-ty=x8PvpDx5;JFK81A%giJ2KmhPpB>rWfe+b%_)(q`EYqNsnKkE-HA6ihV7Wb)pP`U9YeSjilctlmi4GkK!!+LwGNK zJF&{qzPPnkiAhFol7olI;&Y{oDCy+uz}S%-qoUMO{vb#51>5?AEg~BXdMv!*!b=@z zwYfRG(bQx|qoRf3P5Q+-njE@mZFsvRPxy`nYnxY%^)$b4>e?2cbnvvi>fE)ho(u7` zp51C~oAqCM9PveK+g`fU)2@5V@b+^KInLHkgm)P6s-uJL4Ug#bpd(`UbK&ZQEB@sv zv6eX!cnA8Cvt0!F(t{l6rc>cP8rDzdDq+pRbChxx6&taG!r)vX=L- zQU;1r4v?}?l=6U-iK3JXq--GN11Td&IYG(_QeKcUgOnSj>>%X_DMLjmM@U&JN_oP6 zXPI*G;yjOT?b%0u(OQ3WHwRFfJvx!uic%x_1Dbv2E|J^}BmEcOCGuQRSmnEVs%cU4 zr*SeUB^swHm?&K_1&va+yl1_fX)Moa75K;^P#xdQ$d$r4q6gl1+|DRw3DiWLZ(N z4aqtr`;b#ml+%F!##5m>{G$caYSqv}T(l>p+NZHyPLvR!jwv7i+s{6gRff~|EMpT& z)KpE$P3qhK4VD#N%Cb)0V+qT;r*KzQ{quH`i`tWu<_2y7DqlQ#n5?ZZ1&!I1O#+#J za0=W1Ia#Q6AN#0yk0mmnTg%pJ?02($C49)=w;h&apok(9>28^rZ*I!RE%$ZWeOsNT zuG`*z&%S;CL)IM|AG6jyVOe)ByV>&G`na~<{j_$^;zh0~beb(ClWxjrB z!XE9=caNH1etfri_{}xu*NxU_Uq87;JMzFr?VDR~(!PD`0?od7f%e^_1GMiin5rFJ z-CFyh|GCI7elPhj~=tSZ2Z#d zy81oqoMk($ZaGg`&Xi47_lx%HJ+dCvdk);D_ZqiG@7?MSy-$yPz0Yq;_2?F>t>_Pv z^nSK3Wlj3YX-#Q7OrP>@Lu=}fk@^LX|6pDCc9=fR z(?GxI(XaLCOONU^R==*hX1uK@Ek10`9Q02;`J&gXls32M?tu?kvuZtNrM9xH)I&F0 zvwzF7(snGg=6pE8ntR`cR{Bfx^?6qfv@-4)uV>C~V;NWW*5{u;K+l@hRL}0-TF;65 zS3Q86TY2^;dVam1to+?C=nKEuZ(Uq)kABJP+pI;mJZCL_=niYi!j0C_>z7(` zTT?u7^;$JU4$2CU%@ zMBp>9B>}`_nPTJQE@Eul1TBu4IGG`FD}rz$kSgr!E!V7zBu#pJcOt~RAttUUW)3lR zh`B>d9%A+o(}$QpL;@f(0FeTS96%%iA`1{{fXD+xA|NsWkqU@hKqLbq8xZM$$cLgx z2t-B{MM@xY0+AGmtSE}KK;#7?F%X%7NDV}8Ad&--9fJUl0i+A!8(@jD(z#kTepqMnc+1$QwlBATkG$ zI*8msBu`Of4m{y+ylf#K->hxRY2SY#AQI-2E=th z+y}&kD2f|_xDrKiClHqcaVrql0&y=87XxuK@Qkae(A9*AJL=jU$JAwXPv2`Nx;tUz z-aCOV`m|Bg4*2I=m@;$2!RyW2M$R*CJMpr4`|U@JJ6^fmShqCGxbuO>ZO@De#`g>GpH8 zFS4JXGRA&kPz~e7Xs7*B|26i@Qyw&4-v5#DN|kQLE8jVcS3j9)?|f{Wz4Pn4ysw!f zy{~<+!QORKFMHSXBVDg&ZScPS;xon@xlQah9!&M_9=FW9`|kC|n-h-NZ(f_=-P2>1 zch41<8+)g|V84~{nEiIYHy!UpJ?D70*%rsX(2b6LKi}lo|K*jA51yFn`0$Zso&y_l zJs;gL%j3OlvghNh;hs-s_Vau?u9N4pAuT+g_o(AJ*!DNi7cHV3hiW%>96Dax@#W!P z9f#jL;`r*-1CFnse8X|%fkMYOw?6Fn_Ua7|`{ElN-_2R(_&#~F=jeEk=ZDx;o*#Q& z=J{9qY|l?;rFf22o9H=qbeN~kKRU^?e=U>?D;-UTTW7@{Hyic*#cJICE33&_A6QMR z?XsF4-EM_{`n0FnUXRuM`Bhenr=HeZKKPK{>h?SJ*4J8kn?;xEj`S?O?X+b5Of>zU z6-{e38BI~ie>G&gl2fI=7jnA&*9ukt!fO8e{}mPelq|v`p*PPON(wDKFTuFF>Frz3 zud&zD`IPk%k{5qV1>?lulSLFK^8+13bh%rQvA)*WsW{5Z|iat2l z01zjjD2@Q)3?L2x;uIi`0pc7W4g%sNAdUj!EFca8;xr(R1L8a&4n$F$2*i;;x`-> z+vBVt4h!P6AdX8>oEOA_L7W)GkwKgp#Gyf)8pN?doEyZ!L7W^sb6s`jx{7vi=DO#8$B2QA|-2s*+fK5d?oZ}wNZ{LSJlz0=GS&qn;&UaPm1u=I6us) zIXKi4;{4hQxh~cds=sc9ZhFQMW*1nsy_-FC_V3c`7OwKtdt$R*|Ne&@`Yo&U1}iK_ z!-d)US!r30MpGy1jT0s~n)K_dH;wA!2yZvuY8D#qXkN9q)%^Qjo)(`pwOa0J;%W8l z&sOV)k9pdxf8TQCb#}D9^l7Wzq`HpwbKcX>?)|N!!-%K!j*Z`RM08rGN1Qm~i3&6I zr~_|!Ivt*=ci#T6r_0_YR@Zemdd}J6vbrtF^*C=FVs%fw!O3YJJn;j#LjL}ElzQr@@ zojKO%MK^iIJU+@AJ8gj{am_i_`2(hU#^veO_?G8-CQSU^n(%8Y&!paOS(85R@0im1 zJAKNFEge%&?A0&Wc*1evfyeY|%e;<@w%@EzPkGKUW8FgCHTr-jY57go%&vu=EV;bWs#cSa|D=CKMJwg`61h5)?5R%~Zz=P2eCrcMoDxNx z66NvpMBn4*>efw#!$Hb5CgcKxf*2LVupq_-F)&#C5PCu{#|#EY z5+ei{BE%RW1_?1rh+#sE6Jnr>Vx$m5RTN`|7%aqSA%+VvUWfrhj2L3b5MzcIG{mSO zh7B=ph=D_l9AfAYV}}^Lq8L5I@FB(z5deq?K!gAy1`t7jhyp|yAmRWK2#82PghElo z0wNfSA{r3kfQSb~Kp-Ll5fX@)Km-LMDiC3ThzmquAR+@18i?3H1V>Rs2O>NW@qq{s zM1&wh1Q8>MAVEY4B1{l*f(R5uq##12C}IT>EJYD5h;S*2ctHdVB4Q9BgNPYK&>*4) z5jKdpK?DvWauA_Y6tRN{o}!2zMEDd%{2&4d5kZI$Lc|avh!9bP2qQ!sAp!{zNr+HF z#1bNyiXxg2;Zzjygb1jjh$uuzAz}&MB(5HW@bGDMUi!VD2-_&+DmVWQj7qTk%<@csN#_jBZtugXM3lt&;%$&8AK zOqqFpVuHD6!c_B=Ve=Qa*zXl})ZX8*%lN=M)%@@Q%|4Kot$p-Zis4;!h4%59o9$07 z+G>8fV5jlfd0%UvI~~Tsw)3?w8s2Rjs=CoUbabEn<){0!!*ACyzIw5?`Ss(2>?1$@ zs(rKe1^e6m-AsGoF(c&HNm{KVR~w-pt}w%1f7)*F{(2cP^P$0Wx0U)Q?d%X|Xo&Aq zj~3NZVR;?j8aho0$w$aUcz%kZkL-jLEGAr0&g*tKq_`kO2LEuVEk(-rDOO0)LW&ns z#E@c!6g8x{Aw>=;c1Y1fiXT!1kZOQb1*AF@rAi>x0;w8E^+2i!QcaMmf>alz$|xkN zjYQQ!st;0ykZOc~VO3WCvVe>PQY)DWkx9SiT|57VgH4X{(D%FUmBzc@+~L}H>=$GI zuCCtq-o4s>e^Y($2M0f~KfLxk?3@_ec^UHQDKxFKKb;pdIS9ZS=`Vy*9|j;g4i>Ky5B)FUg`sDr0XC35PJ z(}xrRq!<*XC?LfFDH2GrK#B%ZJdh%S6cePVAjJhKGDxvOicV3A4^o7RQjCzIgcK*F zNFl`vDOyU3;)N73q?qAfSkz%s?mVn``fE`#5=e5#M?GijFlFY-%dfcW$<#4cVc2J` zSGRob+PP{*tv$o%*-cjcSZk@Ao&U+=5NV}J7qJKVlpu!~d&jUd&*&Fi#$ZWBr4 z2v=Iy60I9AQ)l_jcA0wc!w7xlVIlPhVC5ct3}%#KUeag$U62ezG7ZT%B=e9HfSd&R z`GjL_{D$0ud94pg=?gA}kPbfq!~{qzDlE zsq_Fz5hk`jX@I1N6zdt^4iPK3RN5e8$bZMb|4zZeP0RCH@~b4jFJhvQ=$;f=B~6?V zTaotpHYolq^Q|!X>hHc%W^ZNoQ;7@5a=umRqZ4>Bk!UH*N1F1nb48y*-`$EK&R_P# zdroXkjw!ltm{VID7gOb`NN3gjh?r{ghZa;%iY=^he#e5EgF6(4bgxwqa@~x=Q2lU0 z=%)8$!tB=yYI}DU*4h81vu@$0!g^2abk@KB)foMjP0j`@9*k+YaHaFCwCiIUO`Y#- zoM6N>={MflG-_N-c)QGkW}&@enpZu)pn2y;dh_px6sV`)_ncjzo_>F%W`TP8J+Gfr zJ^enZg;PEK-upKvPi}W?{E<^V{eI$jK~&iFj;I447IZpnI67~Crl8B-Ydu}ptuHud zONOW0lFJL6Hzs_HNKIjcSMS_Pmh0j`i2a1Mz=i65&cD^v)}O_ z9sOSpbDsPDyN&?`9Sa6-d%|&^RjXjoZMQjMG7lFFUiMGVkg=~7#HQTh8QSfkg1DiV zc;b$J?2PZa))Bw=d1pf1iyaAD?skqiGR-ma_Gb%5y_4@5z38rjF^^y189VKYg2Xig zJm(KcEf|;A+B3doLV^6Awr9exoeL)Q{=_rs^Wn}Zt&1E}UhL$Ydg5cp1$WnRUU=Yn z$FybNI4|0Mw_|$BZs&}3%N?%KUl$}TzsobT>+1!{saJSX>J}8Z<5NBEBR3SJMkIJr zcjXkMg>?3$ZJJat=Zm_YxofhW>AO2Q=H*RvW)#$MWKQbqG**7&nBS+FGb?kqBfIf& zXU^D1963cz3-Y30_v9V;xgbBhz>~lI{ep$ZZtz^Z?&*R{_T_jMExEH`@zzP6CDSi0 zSh_aaBf)nSk&RRQt63}L|KmS-LiL!Y`JOQ5H>>%jT=|q66xl9KSM%~a#g`gdb8cBw zX|3kl6Cw?ktKGqJ<6^MfxERb2=?>RP9<%5SqY!4RS$Qa^e89Ri^7MZ~wNn(=#yM)*##6BT53b9j&twQWoQEV1s zw~AuB5c`GLFvN}_whXanh)qN68e-cJ`-a#!#LgkM4zYKL%|q-SV*3#LR}>9U6di!U zUwaTeU^)0}526b!2Y>BB^nvBzuRVxPupIog2hj_b1HblwZm=BuwFl7;meCMJ(GiH2 zK=cHnDG*(OXbVJNAQ}VF8HmNQh2Cv=XA15Y2?>CPX_S`U%lcMbS}+ zmMV&#LNrxTbQPkl5PgMcEJSA^S_{!zh~`3c7oxoo{e@_-qUbP0ixowWA)2fxx(v}~ zh(1F!8luw>t%m3|^lNtYs;B;0!H|*{p?~>&P_(7X?Jtz>V(s?Ng(2$wkoP}u+oQa2 zs;wzSymQ6S-M(-tG3J*&6AMmkou62A--H-#?fAqhSM`ahn%_II+Wc{a)sxQOUE};- zg*6BF+#S-rNnyx!^LB^o#|lF?eVG_$zgJk>yMK3`{XfOjE!?)d-V^&{>fgUFQNLwd zOoJ6qCN^AnN6cAiw5m+miUHz_Kn{hWU}&+bz@ro)JR&W??b z#6)y@(iu?{S{M~}yEE#*SB0GpFL8F>zN@gy-dhX0uG?IA&Xz?5-IlB>bly0z!QIVcE#x!?#!GN7h|ma)j7XUL`+uZ0cUoT(3qUDh0dI!4uyHq z9~9($6jGQUzP%uS`e7A{>otl&Q{ochNn z*rYpAlTjbpF2X7KlyFMcNH`_)jg-ZPtI$eD_Gi1aW`t8?BwQLJ;nWxjr-sP<5Mrpn z`w7HK{&*bKmT;&zj=Eqv%NQLjj-wJ|SjGUMGD2oBM3NXIz#t(;2{BBFaY76fVx$m5 zRTN`|7_6cgEyQpk#tSiEh!H~!8Dh*3gN7J2#IPa84KZ+tkwXj}V(buuhZsG?@D;`Q z6-59bA^;Hrh!{Ww0U`~=A{vS!91!tP6aj&V2t-IAVgeBq zh^Rn>1tKmGfq{q&L}(yl0}&jE=s<)AB0h>DKoAjv2oXe#Ac6!DC5SLV#0er$5Rrli z6-2Bcf&~#RMG-EDcqxj2K}1YZgbX5P5J7{88bsJ2;sy~oh{!>N4kC6C!GnmNq6i;E z{1in1AtIAA9{wf@#G&7CXiSZ_4_sO1|gKYwudrOjLZax7OrerSs3`z2oK-mD_OYq;hcPWd06 zDr#_|CT>dR)m`k-;&?`j0~#&PsDi6?IcP8ivx2jjUcHX;9%PASvIWT+Bzur7Lb9nS zS%qX5l4bY@vmGY+?^~JfO}U?|MjmiBU;F37O_^DDPZ#sfCx13PSJpGv-}=6>VP}qZ z*X2Li8{_tvcPH<+?-{>eySMSp#(h1vY4@GjVn1-!9ohp2ZnFPzbgA~>_67E)y-C_b z>!#Y9x5R1%OU|_)zI}%INa_@0%c8;Nqw)QX$ELM6ACG8h{BuAJb8F2L#uF{RFrPT+ zHMZ5Lu5EkiIpe9%4r)(tK45QuVTbn2%0j#Ff_JoM3kDd^ExT5Ge(W;)g_I2K#cs3g zmquT0zFdE}y`yWox#O7Ic(v{r^VNOv#?Grwn7)`g)ZUwWRC_DtEBozUt z{-?H2+idS|e2cczdHDd_Vqh2*hgM^LHp*J zkBx6PdrkY!=Z)`HK4*Tv^lsy5=0@{}8Ox0y$6jgvYfzf;Q@7dXvB)dzpX-k>f2oyf z|8guT9xJB+Eo{PE8#{Rqk2+pvqs`KM$MQb zW{7jQ5prFG8LB^Ggl@V^!im*JZSRd{o&5!N-NIb6-V-<2_3yty!iF5X!HOIS7be+f zrA?ABA=+-75G~B}x-Vyz!TjMpOZ%9imy2T+o z`rrxa#(354|B_eS?t}J#&A*xhw_R_axAK5F=r+TS$t*MnFT2hdGIoO*o04e^?Y7K} z8+yJGcl4j)M(5e_dv6i}o8&E(Vzjg-1qn(p|4hWp5DGc}@(k-BSynHEyTNZZuK zoOAF~WA2&+E&YumdtP2=8K3yEojIwlxTWXq`MtjtcXYR%-S|y$L(A=)6GzOv=#56+ zfj7+j@GFh{?GKv^kIgnNUU#E;$-WWBq9wWJ;;mhbCDSLHOV`#jPWe=bj9K&RUSLiJ z{M4w_SBk&zpED=Vy(NBnmLUdG7v=pMJilV6y zU4>{XL|-8q3(;AK)M5iHI z4bf|eWMZ#Y}d=?461@T=F{{``35I?3Uz6|2e6vd~J@M{p?2JvqY9|!Ss5MM{a z-$8sH3BL#NeI)!J#0Qe_gAiXx!XH9>A_>2!D83QmA0a*x;wK@#65=l*K9hvsg!oPp z{uAOuN%&ESFD2nm6~(7Q{Hmh(R)~Lv_*jUah4@;CzlHc*h~I_yUK0Kn;)6-}VTdm# z;g2CcnS@_f6yHq3KSO*p2|o?-)ewIT@!1f+4e{L&{|)is5I+v_0IW>^0!4liU5J*H(wVZ=$ZHPHb&y z7u{Rr)owmvS6TkCcWAdfBW`G{EAHrhc6`?v-uS&&+X;0CdlR;#+ar#&_l~@Mg)!=# z7}w}UbB!^Nw{wl1HrhyBQ{8p`fNsXP+=H(1EgKjUChl-eIDXWa)cXO~q|fWyQ(C{| zo$|tW_S6&ic`w+w*S_$;)!u2#9sQ_YR^~ASMSfJBaB)%nxFM5Hp0BqN121#3U8P zEFq?;DCP+Hv3^Gh`xW~1v`j7UummYOJ_1U}j)0=mDx4-a&{mjZoyoDQYv!Bge?R{?9V*B~AdEOUN zX4o%wo8ob`!iombh0>XCFE_wLR8%zi88L+{%Y zU$WnEJmY=0_kH$0ZM}DYfS>U_3ba4eD6J6^E>bLN~3p!|W?vwY^sub@p%Y)-6mm>OHZ{TmSycZT*&6-Uch&cEg3k zy=SGx+l{7n@-|M0vYYg)<82yM+YWCREr6QWTfG|G2GQXHC3J|`Nh>UK0%%-`M}jXqO&|x zvfb4;q^>+u@}4*P;J5Nj$y46`FTE+xl&td(*!+z=Q(}70Te(}FDVgbw$$UhfDOu_o zGIq5Qo08-@6S0&Ns+_75v08bt&8fcdpYu0)25lXolLSW+I!Rxo^hnCQgii9Q-iAwP zq(UU=fsFI_K&mjQqL-$YtARua)2rDQL<=E$2+>4{E<&^sqK^=bgyg6r!ULErsYQL{lNU3ei@GzCtt>qO%aKh3G9rb0NA5(OyN-Ux)@PiVj1x z7^24zO@`<)M4KV{4AE$aPD8XBqSp}3hUhj#yA?&hAsVhIIu6lt80>u%O=lThhiE%Q z-ys?g(Rqm0L-bxzG#{e-5bcNPKg0(>`~bukK>Pv3CqVoH#5X|v1H?x_`~<{TK>P*7 zXF&XhqWBJo|A6=qh#!IY5{N&6_!Nj=f%q1Pe}VWIh@XM@8i>Dv_#BAef%qOp@jnnB z1o1-;KZN*1h+l;GMu>le_(+JKg!oE` zzl8Wqh~I?xPDSyb5Fe^2eiY(MA^sHNQz3p8;#(p972;zdeiq_uA^sNPb0K~g;(H;0sQ3E6W#B^D z-fXO&^Z%m*7XkwnPzd&OX5hhp#=wK((D=-ad6eOAcVqr_6Vqy0&EJdfCqNFzqhmOy~LE?{+^wPp00dE%)~S&;LmuZU@3B z36#p|-Bx|vjnt3;h5#`6`?yOF2dLELSI}s1`xp+ycwj|6u4Q{vF)Fq%ug4JCK3$I= zM#pw%di>7x_|Xm+YXr{>u4v$*92oNi{}%>V{7(w)pXi>eA@#~cl3SW3hhCI^z;1*4 zgmu@ln%c%VueEXIJ?eowU$saJ!?dSSatY2#7X@Q6De%&`&|7}Nq?Zno8 zdeMC{sCaD)y~^?vGC=${z1sZdX7!|IR*l48&6+XCtq|t{GvvD7R;XTRhHiRT53@Iz zwY}@DI{TlITP~Md^`2NSw^}^9e#_-@i{&!C;X=3ET1n9xO^ugZD#P?9{i5VnN~9j% zF3xNg8m2d|8eum7zN6LRlTfqeo?2F`XTLIAKYZ9~vwoN9$ZMsyy>zqLZeo$%e$H!h zOXOp{!-$9ER><>uL?=s&IPsAc6_%w%9eCF2bXb1Kbo*Uam%WDBb=?)#Ia|h=-IkzG|+su!dy(5Op+sxlH`-XJVqg(u>MSoF8-e$gEZdrUIZ!_N} z&k=`N1Gn8Fwhm0+dx0x?ChjzQciW@q^j63?G9^ZA52+_TI zLfz?F!j={Kh$AsFs_SlR)H~D6(TkQ_V;(=x96K$|N?hYG&mS<-8kbkq9N)65HDTgs z=7eACTa$XfWKR0Li$10Gr`nVk>*-TZyeOlxZ2iIm_sVFjJ^Dr4SI8)=NA(%&=E~@+ z-B!}_<>t(;k66j6X=X~@)s{Pcr0G7AXQf7THB)y@vC=~7n`xW+TXPP6XU<(SSx?_x zPexJo(=#^PGN8DHZmirRqo#h-voar*(NZ7jIb+voIVX-=dC`xUc?UkU^21k~`P-kd z79PtpFJ8Cax@6xJbJ3E^t;JjWn@gsWQa9GWzo!F)g-ZOfOV6waEO&dEFEI)5Q~Rcy`oq?#QGIQ0U#;>Q38k> zkWd7ODv(eHh&qr^2#89MPzs1zkWdVWYLHM4hBJu zAj$<%FNlIcR7_En45DTv6b+(kB$N%JZX^^AqH-jZ4x)At#e=9GMEM}tQ9(sf zLWmkFiXuW(k%Tfr)DfbP5S4@|B}6SDiV0Coh;l;IQ&AKYqN0kTq!2Y#6h(!oDhXwU zs4EGDg{UkErG=<13B`q|E<|}D>I+d|hzcu;5<}EjQ4|@X%8H`Q5OszqG(@FIC^bZ_ zNhmf%wMi&9M7>EUI7G!2Mady*t|*EQQFTR8c8Iz|6dt1T5T%ExJw);0|F-I@NAkrf z{K+A)Pf9@%qct++<5X`Ed*?*Xw0-6#>%9}tTkjWI`UeN@wm!W7LF>Tw<<>_luD87F z(yWiu4C|96Bdt#p##x_D?`nM>)yp~>vR-){cKvgdEpzgxN6`hMxN*3ryItRH6FW&JpIwe_z-S6IF{aD(oP z1DBn7tJ#^inmPW+Tg_A)_#YVqo-V>HDq7W%7*Sq#CS7MMO$LVgUVSE?YG7zNuRrtM zajZ;?7*qm6uj$pB7s5aK8Z^{`@1qzH)qp4mL_Hu10#Ol&l0ei1q9_nmfhY?^T_6er zQ5lHRK-5N26bGU@ilRIa^?@i5M1>$q1W_Z1B0*FMqD&BVf+!S3r65WLi(}voI?Kf| z@G`Z0<~4EQ4skdV1N&lg-VMp}nb*X9p;HcLUK7{SK{=dxP22_*%kr*H%Hxl`ChqU) z@&3g7{>|JUF8`}b6f3P$sms|3VzXX4{C@iFe<%xjdFsQBc} zYm~QmXb)#zqgeR{?@z?XH1t4{=V-KQGSxEWV^xjgwW`RPhx6&DnsJOz zxBPHB1G>h`V6F)i~nb-A%$jh-q5u{luof)GrJ_TyJ-? z_hVz4zjov97EgKXmJhD7Tit${{rldT+0=~6f5trNy_u`G8~=aao4Lt|Z~vSf|II6Q zLbZ){!t4LAM|^svJ@TRJ>`|}XWsJT))1EM@m5W!)RhOS0ttoGJsu>!1$z@pW694Md zEwNDY4`t`;g~{#Heo_&9N_*(OoHtmuU%>pJn|T|pyya4AtCLe}9GD-LSf!cVtaWIu zO0SnUWVQ{gkB%wcp6_A^qnX4QMi1p<{7{)j%G)q|%j+>^xFcg8Rib5Tyc$zd@d`Cp z;ZGrz+rBWMNskx43~6VOwgzc$iqhsF?GDoRAni|4+90GIDoR^~v`0m0laO`^X`5t~ z_6cdDkanslZ57g9A#E1YZXs0Tu%w!n7(JFk-5q|OJs zVRB?_fo}-NfqjVu;oG(PLJZjbB<_SHEYSvuvl;E$1oAnX<|1e$jrtN7kcy&w<-y zEZQ2qcdI*OELy(a=eMOY7Hzc^{b7=fMa#4LKOHM$(WY1f?wKKD(fV8GT{&3BqP4VQ zX0?~GX#Mmd!)nM_v=;i%4qsStvA^l3eMR#1*XrfIBDrt66?{cg>eqGGjJNfq#fPn#gZ`-}U-X)l(&iT3 zJ@6rGR;|aZ)K-?2dgx|r_HS8M+Kz?RoDU~hbML#*N`Gm-KJTi5R>nQ!^~~9AEaS@F z`uy_;=vlLx>e<~}>p5{h>$wdyJ+E71E6@H!&#(8BmB0H1ec?Czt&0op(Jy&@o3-ec z=d8sK-C-?RxY1gA{Zgxn+?D&k`G=9xw^>iesrWuwGa0`#Ssakh;Z&*UhGDtQmVMH6 zAdCW&tq`hC4PtJJVsa3(gP0z~{2(R>F++$cLd+3jk`S|mm?p$LAtnkjQ~0M}HY}#hek%R4 zVKH&GKj~$|V(zRDylfb=XBpFnm_I}UATj`v0*D+yBmp7|5NUwO14JSqG69hah+IG< z10oxWA{`LX;B0&%t zf=CfWjv$f*ktK*U!T%C@3KOkzB3cZ8>V1y0TlX%byE~aX=_*kBKf4N~JV}lR3#DR* z$n>0A=7VPixO52(t6isVz505ChG#Wu+@xuEv*s;YwrbtR(Y9UtvpaN*h>Ysgxl7k` zx;eY|=-I1xpT5!k`ky;s;CX{$l4d5SxM!u#PMb3~eO^YUF+VFiCpT|F{=$ndoOaRl z8Lo=|e#xT6OO~3KUUvDiE3RCA)rzaHx%Rs2S6ZuXxN-GOYi?e9%dNNFe#g2yJ?l5z zwejwI?!E8+2mbNkriV5cJp9O(M<09qpIe`Ja@$i+Z-1un+2@{r;l-C;-to$-J73%N z`Ww67+_U$sx8Hep-~RXB|KP&|A9+9i!)Ks z|8o4--%b>@ks@G{YbV9lWys&ku9H>46!<H01_HXxx z|6X#xbaz$rUzAs^u7!q$)#lGNs%rIh-QT@KHx{W{%{qZ?tAxl~cdAvRF_oCrYRMql zDplBLd8yR;Kx|e%)z{1aQ(&!Z5|}NYmDzyfl>hC(+DdI9MNzM&Jku;c$Rk}U5)PM1 zvV#Bq_5NsCj!(($!C?BE`>(&;e-9oKJ2Y-s z{P2VkBS(!MGdA)3apNaUoHTjL)C>M2{I_u%zFT62Sz^BQtkTTV zt60MRN~Z8&@~>@JVPXSaYf@n_*8ZP78c{B_a4iVn-%mqiz9)3l4U>Dmm$Z@-y`*egE>VBMs`!Uj! zG$VbcmXX99pEA#!(8$bA%Sp>~&q&YAoSQV;os?2~)lB#7w2TxjBQs-0QcmW)wB#A( ze50bj2EOc0O)7JYjFPMToB8&yWoKzgGG!-cr5QOhvT`#t|A9-a@t>d{l#6senLc(f zedQS8XQY4q*?x938~V3DORe<@cnAX~PC5jM8Gqjvk#bK}#GraZH>xeq=(THeq-i zw=IJy%A~G+-Ppc)-*G#c)T7VDJF9u$Hoke^HeF11<2&zj)VyySXNmb9YF;+elG2UY zNm_d50(X{{YZ&sGl%A10Pl`P`Elr!5o|G|HOU}s2O4m}-Qqyv@)T|_9wq|6dW#ni^ zZbovBmTe>@yR`+GSt(k+ZyWYoGF7WmEzq2`s?|v9uPWxO%6!$TT2)Re&~+R5a@DF; zJu)976F$Wh2HLT!#JtBpPn~#Wa`*~J=8Elxb%F23_}BCI!V>e|67!Om;P$dQIPWPj z?t(uCrrTt?U8Xx^S|`(;G6fPg+gzrIz=~6`lh#@5qILCc z(pQVt`f2@r3q!RyX<_lch4Zy>+IY=>%hM;+Nxr|#(dKID+C1Mv@KcwcqO31dN%BWu zJ1=JN3uR_1+ODv$^oFKcdfB&Bt5%gNx*qsTEh&6Gc!eU(;^gGp^yKw_eoY_~e+7$k zCpI7pOyGAd{ChK&k?C+}Wo2e*(;P`T4tGY1BXgF+NXp4^XJu&9lFM0{n~~*C&P>fn zyV#xLNS>XPm6R+SJ7#63i;84BrfDJ{Gu>I)j?CN~b|%6ge@@GAT(a0PKQ}2OCv8@m z$c%3*M^0v@V`f_F$$y`hmYtoJk?N3r&r8b?pCR)X$x*UO95XpRDLY$pXD25aZb!Cz zey%$s+3iTnmc8XArKhE^*Ww)dw$4h*NOhl-x3XImXVj6B>CSd!WajwK(2?ZGavScX zoTQoQa;zNpJWaGvN-HVdSCai5xfyPG|CE$UihonBf-*~*Mae}Dk}{Idu3F;Q@d;BL z8AQCZ~(5mjX3p?-@C>-Pvi`T9$j3Tb85%b28<8GrGF-)3S5q&+`45ffnJXd{Hu& z;z-JNjF~uURPp(-GC6aek(Tc6nv*t93fjm?%gm4}&WX&93LZbo5jgesY)*EyU|#$u zP0L7eyA3(v47X$?MRJ&$o1T>AkkZX^OY4yRN?o&^tW9-mvy$YnDP%uM+G282j@uzY zjNzE)o|l=mP%=3$DJOY0IV|V&%T{7?W{TuK&z&_(nsqSa<$TlECNncqBzDTo5LcQx z*B8V{>14aJ)agq$RSQbXm!qe)KGWK@4g_Uz2u^b~a} znaRnyS(-H3Y=;!6syI2>#Mp6hJ&Mh1c9N9D#Edjm@ct%y`bOc1%+5(lo-1bVPM#a3 zm9S&#&&ZT&^%t+?a9X}-kl5O^Okt^}Q=-=V>uJU5X*8k~ZCY%ZO5t>q93{R~T-x%N zi4%r(jh1>zacgDH(SKTwX~ViWrj3#*U8XUYVDXD(ZekaeyWD^{25LhcJ~c~3N900P zb&uY?wTjxJ)N8OprJ8(7c#=qFI3hbuiW@g1%2%DIQK&>Md!e+qe4oT|`X!no*>^++ zv?UPm^P2bm5NzE8KF>%b`(Q)Hdv&nYnL}|s}^KCdU zH(L}bCn+mO>7Y~tTICBoE7QUPRe&d%mMDd8_zHcBHZLh%R-(Pr5>-7IL7yVp;WGmx zD^p_R9FZh)?yH}`)+c2((84lBX(Q()<)_Wdo#*J;LrhniW^P7WjwmAPH7_Z{x5JbY zrJ7y*mF`YSQNgP8c`&Jh5{+Fs!p!6x(FmWI$gxW`m}x!x_NCgQyNVR6A}i5K%W5C8 zCr3e=Magj#65h}C1^Q*T6)Db3%goJAU)WXIpcG%wlaxFkRim>qbL9e3`ri`9#FaSL z^297N!|fNdp!iDBXOJ1uIPp^c!q1d)DeHcHb(P^>AbBS+$RT>rrb(3H*I^Z_NKR)i zl=h=`m(s-{fq{4}mgc&}>Q%FtpPPx>rMA2IBNk~l>T7cSEamB2sYMPN=ZKWJC|A@? zWGvt&lSRa%9IDCAbo&E{z+uZVUoCTHc4oR9+;3))Wi>QP3mUC>h!Sy_WGdKvOSMB4 ziv_e!00ctqSi3kB?1ADBh7;k&@5$M-oBjst)9HjgjXKbU5=BvrWjGWf1=bj@esMX}7I3`q%L4qXz)kL6CApQgaaLgqWJ1;Kn-(>a4*C&yK zBE?~jPZ&D}z4C{96^T!#5vb0j+?-50$|RW2PMam6QBcnUo{}m{ai^!vldB0Xq~sFE zU!O$!fl3WF^-`|dU*jde?z;|?D8OGgzUbvtbr?Blk*HrvH#u_Tpb`C5(GSY+FShT$ zJg6`v_tk!xBS;}DPwWeR($ho?B>b*8dM_Djl^;|2Yn1jJ(4*p}o-V5caS^Rk6(p*U zPM2-271dXuwo0qsNd`MJiR&A&Q@@v$s8`A4jO@8-hE%ODiiw*tVcg&ugGY@TJ9)@>s%NFP>Q$+& zdRJKS<fMJzWOWwd!??bDr`3Ri4^H0^!bT^ z(~?Mvt~J%S93MAh?66_u<0i})mB3wAETEjuuX37uFr)}v#LCsY zbUyn#1gOGtzQpcT@ulVD`r25zoB66ph4b8Fndz2BD&?-av7|}+X6A_tkiSXGUyziQ zB6l%-#S(08KEt82s6x z?OG<)45?D9c37PnGMHN)OJ!_C=_G&Gs>$Q3GU%IMAFR#@ks39ZU2)mv%dfolx|P?P zmztMqns52)Yq%HA@wi`EO(w=iuutxthseb7OHQ&_Dh2+w`lcIhym`&-cig$oT4k-$ zb>H%>w+)RO5*t5k)abEeVg|vA&?4X#w(L8ll=66_Nz>R#NebhGS!z!cB5=6(B@>ZZ2hXDE&1WA z(c;fQtwbKeQMLz2z4n}ZyiJK1dVhh#U$=H&lg z)hl)NbW56}N0#K#Q&)Xe_3G8D*EQAM)m7Dfc#cmac39M;VjYQ2c({8*x~MrpcUl9Y z7TrIt+i?KAdVrfw$J!6adVn&qUQvq|k>C)uJ+VY@dZ-sDIhgEE9#4weRIH~T;S{dO zxE|LIb+e$MoxfBx>N-W;aZ%S3 z>+O$`*AE9Z=#9rk9Wo^G-`|hBhB_Mb0B>5<;T?Jc*GO;mXMfuDjZNZo@9rEnv# zCw>A-bfZwQCy8lEVh^rW$zflDuDZZ~S z)(!iT2K$mog@>0QxbcG@kN1jwLpNixLnZ+*aC59L*1nHM0TD{|5B2sW#D2)Yfp^s8 zVU|Pt!6e?(cMr!XJT#C@!p}gY*dOmm#ZQX;i4^o7h>3=Nyi~%qx*aD{D%UUo`{2H_ zOEe6qscyKbLV9bgr!RIQ;fqZ{UC6yQ29wbFJ`kfR0`LZKnqu&Ax~ZT8vEf)xdm~aX zZzGxRkxV`P@f0GGH=_X@=o#vYoy4gXjiPatXpALs;O&WMj1S@&MKmV*JBHv6#AB)U z8Vzaz(unR8js2n#Su&y#!QoC)s&SYaif9r|v7Xq?FbqI1PDKiSAM~O2-GtFcIw|lm zb`*;fe=LQYTk^pg>t|y(fhUfCJf6oAT^KO}#`}^)dsA!}r>F@xSMl}(iQZW65XwOt zqtn@5r(Vmr5#|r5DS=8hK~NI4Zo<^@H0XzT2((3ZWhh44%m|PYlg~b z_OksocZufs$@aEbqP=k_PBk&&W_?tvr7K#zyf#6S;P zj)?Y(C{mL6S5=NCQ!&&TKPci#4k!CNkchXA>W2{>?n`D8?ai@nbQ@80DX~t`hLhNr z>?R-m6;7Qzk8$a>QNa{GoIsb;7VAZ}wpf3n4=#S`h>G_Obq@*f(eDc$(i0tcoihL* zLrAgi9)MKO5N^N^(P^db<&b)tEDnSF2+h|>!lT!^urd0VqsV-8FfERz2gT8$PI2^P zmpGQda=PnLMn~*c{Pd!jpp=S>>-)s@gW~$Mx>hK6hIl%zVl%Kh;B2^06SzR(ZzZsW ziGwq6x3>juGvj!97=Wz&%g&!d)Ovz&&5w4!2j_19zdg5AGuILbwl#*TP*a-U{~u@ea64#QWer zS9})kh2qO_Pl<29T`Il@_agB#xYvn4!o})HEKoZr7Q>B-YPfA;E8Ih37u-ukJ={x0 zGu(P{1nv_=2V6(=!0i)Bxcy=nvtBLnR5|hW4#X@IcfnmQo(Xraco6Oi@gleb;-BDN zCf*45uy~st!C80*+*#sXaA%A6!aYlT0PY;|Vesq|pM<+#JVLW-#TS8-;y>U%PkayV zO7U~J?cz6Z2gRS^-b*XR#IwbGOv|kj3*eqD79r;OVj0{cVlCWT#MN+Pq6uz?=z!ZP zy1_YD+zgx&Nw}-TFx<4b9qygt9=Ml_`y)2a>Vv=;@lv=CiPt07Jn<&r)#5#HpCLX7 zcenT`;?EHe!<{cag_!%qBXD0VehBvp@pHHh;xV{)iNC|WQk*qoh8Pk{;hqpH;a(*+ zz;cgV2a5srwxSK@=?iTS>xHpKW!@W`55BIou0o<+PrEs4mUJZAf zcq82H;_YyEhw@Lg6?n}gf!M$DlUfz!X-%PsC z|JzLYgfNTlXJ^c!r@FId%|M@W_ADDMa~|;h;?h|W{A!lLy;xiZm+osngTwrzXPhV^ zs0(|VrJi{{4gWJZKFi_H!T&stM>zZi_+P~FB@X`%{{P_kUk=yf=KrNQK8WLEcsQXl zX#Mdk5dH`b3cn8iCvkj=!_SBRE*xLw@Jrx-0LRyG{GQ|90ROW%zQN&F!+#jZH#z(= z_#eXYTMoYl{wHw!j>9j4|6Uw_;P3*Nc_WTf=uSwdg}|F}+{xiffuDrqE)FjPuEB9P zhnEA_;&?j3_i)^m2w#iiUJiEvcj9;khi}5dh8T{Q#4~jZwg7t+$FuNI^imwh@L=>o91SS{ z7>+AY{-bZgGu4~nsyxi5sqKs_ydl|aWwo0a(;~TU!uWT zXAA4O!rCaT?ZQ4!MCOYb7l>JHV(w*P-U2aixtMoC%It60=0 z7T+l@x>Q{9kXXJ-tg3;8?ILp1265BnTg2Rf%aG?19LvQ8V5(n!ISL^Lik*Go=1pS$ z1Ba4g#u7@E?k+L^l9g+=ZWB+p+6RZ9`@)Tq_n|f0ZUgJ0#eIkHEOq=gid?k#lI6r{ z1iC0B*)9R!L&T^1_Ni zrA^LvoxB;~uR8={c-R?7j;Mgwm$@KytFF>uT4N9rpM7&)9MCH3qIT@IC_{FmQ{3 z+eR?zMYfglXU@IGz;y=RXW#<{ZZUA1fd%c}s&%IG%kl-Hb^K8y{^&?N-#&d5sf8!GK{guS91N~`C=ag_2^ZYN$ zviY7$^01x~^Sv42rK~4z*~L=kmzd>9%=bcsX{3k#$QD(Mso%4>ZBV?$c_rquBtOT$ z7`j=kkK|z;B(_K^A>L0sT&~Q^c1R*#+w;%F!}p4RB+T;vMwt1fOy(iHk$E-}X8k4R zvLt4G2yf?jy64!=@q~A?%-w{UM`GrYn01ht>nkzqATisA@bxU`dcrJ6VwNK@=Ox_E z{OyF9Ut;DVJfGvKoz1VB30J-Qo6mVEUfXjI?56Q`z`8Bb^O?pofai1FpGla@lJZ$k z!V#8Ftv$jzNX$AYtbPj;v&?rxW`u1bIVxV&OJXkTVbom7G^%mapPfUKOwUD2Z7giCIsH zSw7+QER*`&^(<3jE>~i@l$g(v#N6jd%M`G4rVm@CIvpy2De8O8; z&KBU+j8_w89*MbL60=Og4r2#+7U!KsnDvpE^^ur$AbbP!-$0moB<8#-UbPL0Ss#g6 zj>K#e!WZ*>DLtz`iRCy3s?Y9YE@;?eRSLOg5; zm!Eyu&SXy-3!U+7cP!}V=eT&gj-NC4MvHhAzx=+k#-Bw$EHUg>gNJIuG?sD}`E(#& zKQB}KwK^X7uz|Y_e9FLs2EIe%v%E6r=y;U%KIkLM1<#)}o;i2XUw`60JHJK8gZ~u< zey)K}8Tc;77hCE#D94v9vL5V>qv|4CVtOvCy4b*ct@$XOi$yRjrIUj<&-zcFuh$U| z^r1f~2lmkzHoWO|ur1Y##^h^$FkJy&GzsDyM=HHRToL6F&Nm!3dP;1eB1&vW$z&c!D#NRI4iPH0K;$iuc zhsz~=0pEwnc)o9udHKFYVwO*Gs`xrCG4o5z{DgHor2Pq(@Vz(P*HxXT+JNL|eLh7p zS)W%C=C&=dQLl@b=OW0_@?~BgUnP7I%OoDHC&gdNc`rr$rOZQk2FKGA#}dX;Pd;B{ zlO?Q!jOTYu6n`nllbj1UFU9X-yo)fGB{B08KFmDSXB}o9iTS(}ZepG$!ptKv^GM9s zKEfEg>!W^k9vw61_U$^s*Ep6V<2f(k7LIQr%xyqoZf_DZKVkZ<{cXtoeSQ0S_cukq zP5rz3h>i#UI}Q9^1ApAWzcKJP4g4zu)4P8ypMLuqf7IalJnOcB>$L$oZQ!~{%-2eZ z`CJgL()W1O_84y^%sfvf%=f*7Ygm2_^473@2p?ei2M9Bd#H@qF%r7yYJHmRLhpyLp zZ0GC1^~_Tbo_dxkG0P;Z`+=7eKg*~1YnlIA!ptu*>nSnw6K-RkHp0v!G0Tyd`3dXy zCbUOs8|z8&mvdXCXTUw2cMoBfFEPuPnDa`^@(JI_d2b}lc_n7~5;H&HBg}t5W)n#0l%MjM*mv)TR?endKIWNU8htx3@G317)PSAyqCmPz=0jz6C;mrM8r$Dbg~HYa>F$6rmD?N9hB zj=zd9$4ksI37>;Lgr2wPs&Nj^%eV2{C%lgHt^=-STuqqI7vX1e-e(f#yo7IN{+oe& z821on9S9F_`~dJ=#&l+{V|*Q9=9if5LpaMkS;B08iJ6CRhIulCIiBz-jz2}1;|bSt zd@W&)mzZ@Ryq|gY6Xtlr9UR{Q9Ag|K%yI}nf#aV*n9rTW%p)<&Bz%OC(G3!kDMa=&q;HPlE_Y}gMS7PRonDa`^G9_j`2_NFThX}JwiCK=sEJtE~ z7ehGCJaNJ-lkiO}^CrT~BQeXDnE54U`Gk|qpCrt3BxWAMT^!#_4RHW0v zc_rp@39o0HtOxGnynTdOro>#9#4LyKoy>nHVU8!<&++|)Ij_VlQ)1SEa4+-p8kola zdzoLxGnVlzpW=0YuK3k8h2o#VJkKD^c_rquBxao@W_<|X#(8fe%=hyO&qNI3=wLY# zvmA+84&kS=oTn0IISMN|60;nMSq|Y8=S>l2{Uv68iJ4zwE|>6e&U>6N^GnQfBxZiX zcQF4QgqdGr=9ifHCFV9GG3y{P_iuzBV3`jPW;qhGe2F!@(Dkid7e#}c_e0? zCFZgSKgj$K5@tCPb6$y=pYZdT|9OO&M`F$^G3!iNzx&%tnBxgw!*Z@6%=btVGY{cb z=4mBt*>K_GcpAq)4LHp>O_=qRnB@@eW}a@sth2<-L--`~oFvRV5;Kp)-2Nrz`)!H2 zT#5PI5q>_m`R5bnHZL*rNX+sHcd`zhgjolP*|rjMxrCp^7{jyTKF0S^Jj;>sj43|B zI6;`}A~BaGG3!IPift}2_it4c&-xHv$axn6-_0`bCd}~?vrNJZIDP@}i&>u+6Xtk{ zxh@j3Z6#*;gkQpWUqYDkO3eHc^K&lYTbTbA!fbzuIWOU-<9sbApAMX_|3n`pG4n{w zx=GAsNz8R5EbMd0m48)B&sIL%i&+1QfUA~7M&he@?3C>3{j)HqhE_Js#JY&t7&o4S zF~+m8a%LW$A?9O@@;r4j zqGmN#!w~6h;MZbB$$G2_*@(3uo3RFDE7o|ZJ>ku7eAHn5O0B39dW-n|SWR;+R;M&# zg+~+Cg0;x>R;+GPyT%{F*!2;tqrn;)tSE86^%0}hKNCQm6HvxP)Z=uQ(S`Lx$8)F~ zEA)D>eolV}U;yjG2C>2mpV`1H&mpX*I*D~r!&nvd)JY$@4fi5r(;Zm1SZ<=T{4{Y2 ztKROyny$Oi_uPY3b&^7hq-A16Zy2BCLjc04v;H zB3_CwM7$hdhj=Bv4Dl-QYJ4-|0enB=0nBy(XYqRR2JuGmCh=zR7Ob&+K)g--3*5Jh zcZh!#?*w|6csJbl;QNa2ga3edzxaUop!g8bhjDyFeAGi96CX$TVaZ9{Z+l#NWj~#N!w~u`C-K#mul~TC=P_gU3s=tP_aP80u>8XEKspP#R3%zR4h=j zK*a(T3sfvnu|UNF6$?}>P_aP80u>8XEKspP#R3%zR4h=jK*a(T3sfvnu|UNF6$?}> zP_aP80u>8XEKspP#RBEFz&X}@>s;$RxW!Sq^{dFQSfFBo@>!tVYY!{(D;B6&V6s|Z zfi+n*tLRm+K*a*(wg5ghi7(sa5`FjA!k!?x@j+qQH-u;w`?Q0|Oza^t6T65|{Mi9S z@pB{*nj1j#a^lX(3C~8pv*hk1^RYjPpBCiAou3n)jnZkSlb{+E7N_=2nT7h#!X7Cz zp_AGtWe#>qS%lC+lyV_xK6Xu^+Rg`FjQvw6?m~p!+Fxv7H`a^hpEUuvWcb!sfF6#r%__H$4`(9ch8>{_^d1-=je6zm7oE^dAHrO6kKl(p{d>&;Y)V?xiI5v+>e=^a@1YSU058gM3%En>vX7a*|S>8#fxd z1v~4UZc0fF(k1AT!OlRzMEeENk;JY+hIu_sR! zd*ua*1l==zvG?ZGqJ;qJ{tJM&Pkw@ddF zcIYAc*Kz2b*v02vINpsTm);{|XlEa9%KMG*2jqS~AHa@3guL`&8Kymeyzw71!XL+u zKx5Iv*#GB~*t3WHVvkSr{yLw-E<2wG6)UHhe2{nDc<>vk-%F%IN z|J&HVND=K~MD$(W%jmn<%ZPR}3Zn00kE1O3zK@-bN~0eK=Kl$HPx4ccCO^e4OSwcf zAR^6v5-7hkoli&ZpP?S!`aha;c4((5;&9Iy>G_KQQu@=`{SkJh8lAG@m)M)?S2&8N zUm<_tL~T@+S#DeZT7*ac4|{d_>DQzD^3?C}H`v`PmmU+P(r>X#n3sNsUBhV4Frwc{ zjed*0!)W)g{OOO_X^iMk?CY=@XQojN|8Gpn=Ilr2-JL8rL_3`QMb_Z2aD!W>w~s4l zDF61E_4P#g>*f9B=Y}55=^1j<#|r-qyT$!Y?iTkC>=-vOMCJVrW&K@}(!h09EO8K0 zyV%haisA^;kW$n>cMt@A#$UPV3o-5}a=<-Mx!fGypid8Y1!w4a+kT6lbZRr(t1N=d5xtDut#YyV0^OUgm1TDGe{X`xcGqT2G4%SmXh zwa!E9tqs;jYZGWQke9MTg|+WZ9X%AxZ^n`)8&TROE_;jAfZ|A#tRQzI$gBGnYfDbd z282lu&AZj|lj877GDF*}ZPs>BR_w66q+_)2O)V`%rS7nH%905aWd-R$nkavp^+fAx zgcParc3QhUq+(U>tay^;CoeyRuJ+WEq+erQgK~CTmgnCEMbLh1ei>j0#wgRl;3oS&a7!OhhOiA`3ckEle-r70_#5o7XEdW+>JGheCoZ?&$I zbkG`$u0yKgi&{}eD%@uI>5%28>tsI48?_EwN91wTI%>7%P!?Zd35T?0NaNAysF89| zVz=zzJXsMOUwCX*C=0r-*Rm?zJu3_GE}4j8blpn#k6GoQ>#ggp8<=h!K@_9nZ?shG zG3&_z^c2e_Q#&`8id7{XgG?fdQ%Jie*9~LTleAL$=$zzJj_a-V08(5xST})UAyQVv zj5DinhgA;hw7OVs+?v{S+?rg}ZA~reu_ha3h1Q6AH;t7~VK>g7?&U5n6t?`aGk+&10h5 ztnuk~i|7uJnN#7XS>w|w>r_BamH$p_G|CEDJS&dvKU^4`NIr zj$9tif3HRK4C&r$Jri0#UDoMYmY+;3Kil$?nSP&jpYOs1==tCfphV3k5y@j{E}MNBT%B~Xf+u0q76 z(;s5=V(Z1$O9JSnR`En-xVd$SUjJoQc}SO1jC7rs{FhsPdIj6;mDVe*e=3n)WfelN zwq9+$2J~vF!E3G8TCbZh`e*C)79A#K#p|s%Am$CyHB*S!C2xufk#%2hy)l4H`;V9Y zCd;HZdqO1VmNDopBfkQ(#EHdkwG_S0`j@iOTdlWqNmSn3)qCSN}zW`f}(drl9H#wB=x-kWR~_mD?EC?^#SYspbtpW zAr;p4)cyx8MIW-lp$}VL`iSKvN~IW8{zolMAG7?Vc$8irxBT?5RXlyda_N)SC#_Fe zpSC_@eb)M%^?BkHNwbAFRwvdTeJLnZg$EHCNvqx~;iU$MSyeHHH4Kwp=~za#W@ z&{w4YAJQkR=o{8It#5(8CS5|`wjQ;{fPb1Yx?6+IdqAo`os9DwOai$)^#H6H1nzywB~9m z#r?$ksWnmhx-I2rvSs`n?nIScu5x~1dFj6_FPW*-Cz+`fHq!~4>4XbO50ZZhC71_k zU>@Vi|E2Xy>%W#4aT7Q%IDDM*Scgs!Dh;q&p|Bxx? zigSU9=0GZ~9M>tDTcyn$;WOiBLU&aTxsMy=y0I5x^(EQhLW9)Wb1HAZh;=#K^lZ-B zO|!ozshHbaA}J}OyQBC0Z?P2JBD5dGE9}u_Qwq%}uxvfIKq1?o?C{g!TN2C{A09HC6gbmv~gF%cZ#s^L05SCk$D-E*0OkK<*i# zUV)C>cr)ytVLC6~GqY&i+@_?{hrL?6dg!+6#snePe)*yxDdWeDu8mo)SC0ObdVS5K zVs$8NU-ugM`@tIIpFg-)EPrgU-ebp}V+YgxQR0dF+#;xu+K;VqCAAm}nEj)fe^E|f zNohfGW}dLI>Nn=uisp=5)0NKNKEn->o>P&`yO#0w53=?6xuy??YL7wnq4Tc}*GBr< zqW=KhJW4uyao%Q`okY7l@n9Hkw0p4;cG@4F|bG%gdI!+q9 zp<+-_oyU`No_%K1c=ib^o%-9bWQ8v$sO5|n7k=r5NYq*tk|&6lJVA&N%oWMYe2g}yX+dfb_&u} zI45aUhCXvmqJ;gZDaby z=&$qm$DMLxyx~%`--q7I)LUb%i{Iam^G`=1mFHrr2>$A2b+V;&CpZowh@upJa% zXxtH7eb3*f;0>tI0i!`GyzE`P@`5O}%!n-G{^U-53==zT0p2 zLrNdq0Vb_c(k2>|bc=n9ox-8h$WPl7Lm69eZxmXx7z;@PsO2VhDG!bLB~I^Z}@GtpKiB{qdRObJN>iBP?zNveDrLp9>}Lm%KL3>S*vP(qH(2)> zAsrvIf1ge}hE+7rvBReOZI>RfACMvKYt3C>m43fZi~Et2xE{3qMDfqH6}fc@MqZoH zj)gbLeGO^PL(1_yyS(&#$bY^hDu<9;o(fTnYmfX8$#{YNLePr>=^^{Ypoc&&0lmn6 zDTv~Nq?>PSDSf=KSBA-L?oFrS@kTrpdKs>yCe0sNm*mEtk{n*`uz!R-xheSk6&g!t zTAgow*7ezbh3zNPMz6I0sVJ)C3$|OuE)}~3TOc^L(q1Zd3AR9RY^A+~YnNPU#oE`r zrkc30-I;aH^6#OnOL~=kX49+fGn-D=d#Q;im)iJ5lrzy~=-+M_zWe+{Xf%oRU06jf z$G7n1)}Sx5zQzuURdHD(2VoU9-Q2uC@_jXM>cza)9-Ca7j)taQohurTZvonAVYD-@ zw1Ufll0fw-ZCikJ@L5|tL)lPSjn-n&8J>eft6XT-P0eu|b@L$GzTueTj3MRV%GGq)<$LVU>3l+WQ<>aiQFYiq<%)Gow~^X0a<) zE~&k-XxllCumv83wycDvj( zwoTt*|7%gCrM}ZHjoxJ|((+ti$$hsy9=*rM@gCzh^0@?z>Em|sMCajQ+fU~C`Gg$~X_=q2!yzs2Q+Bwd zm0oJvckJ&< z$_nzeb}B?M-(kuMg|x5Z3-L+1E=`s6UHf}Ja&;i|eLI)D>HldLOFyuGVE@qmQPK2c zo5-t8;h~?{UixWH*qb_5=x6rNMzs04t?3uGNq+tQ%bqw=rT@}4>A&s#iSqx-_R_EI ze8{c$|FgaH8+&|ma}#>ZR^*L!L%+36a^oi_`kg)5XkzX3KlVh>=ym#Edm_kN{_ky< z{$Phgf3y{OOUjBr*?!99sf3HS!2j8$P*(ieE|&gc`{~akS0G)ZzuNiJ-|QgzyRGOS zwk9pR;^Y06T?qLtCL&fuMC=J83+0VY5zn92c19#Wni=tvmJ#e*ky)VGk+aH1vmt%9 zEJc;1@SMn;NEHr6!MasNDE{n7q2!e|H{vIgV_t;loRCOKBX_=(>xSo{Hs?nCbY4W! zImj_z*4Wf8D;7k;pz|XOK??%pFN!RRERI}IW?GCg7NewGqSy-}OF$PyE@aX?7fNlH zM*Kv)nm;QpisVOLyXw%zk?|=j#^=f9xFkY!sU(F|=m`;*E)6&zTCa)norpw=&`ya3SPwg_m;AaO#rhi~<)uxL&7ds?QHbIwh2oVL9H&P6d9{VCh`#}m3 z)@a{IEgK?!x;Aoc9?NO`C^Le%0T71w&&>z$u<#^<^&QW_nMlt$5r zpV}h1G+I3lm3$r!N4!KOd1Fcq9f=SfWg_{6RV>9HjvT{rq{y0FAGslbu8)LEW*Ij| zo;*_GQzBlv!B>m+$V~>tA~6oNN5Z9!h)ZUPUaU&*j1aX;SK-mx*ZA>Wk%=a+PVq=C zWkqgG@!{i<<GrfY#Yk`xId?*{qMutJRg37B;q0*lk8JkvFtE{I+=vZxe z=?Y7cH#R6Vx=y!6Zm&?m78u>0Q!nL?$aJQxcv?hL@VS{R?LSz%^2eTvRH%Fw$cj57 zxm5mhT1W|ZMJhCTEKtaq3x{_y?O%On=;A$ZcSlO0tay6FPr8JABKJ(PyIrkW{{Fp@ z;)zOmMnuyy18woFNO|em5tHtVXnIaW(ftuc_aPi)l?Nhz!mhXxldw;4-nDSc$S;q} zUqR)tz;h#|(eomu(eopP&OadFN;*@OtL_3J2^Azo?B}-TswunK09^3lY6FU>b9eDA!W(&rR&|R zayeffsZhlNehcV!@`}iGBwf3#7`=9i$Di)zCFDyf*Th5mI~pxo+-Gos`2Hmw&l_PA$owG7&LB zXLl|Uc(du5Ln^5z*^eo(46 z|7fLndfu&F_^xTF9GcZ23W{-u$DL;*Iy_p(`J?CI8Or;m7=QQMY`w zcvGZYq)LBt#H6=GOd^iAM*O7pepBRafpbE1`gHLBB~l)GdqmMYB7So1_OFq5R%nt~ zfX>RhBDwVLh)M353k$s`QaZgiQaZgaV$%CZe)k`U_(|9OgOLx8@aedUpKAf{=+8uj z7V@~_vql<^Zc)vl{n0GAkk8JCBAV0ny}InT z_uJkWZ^%45-jqrx9}AfFtKc)m0w0ZNI-NCkfAb2RPF*Hz*||0fJ3LwI9i&%Ke-^~2 z;uLpqx+^Jcdrnq)ZjHTYvg+&COP@)v{yH|-_i~LM@|UAxbdJ%|%N4K7)qYSpI*t6G z^itwX*`>*p&p#;uDw1BK=vpP%HKT&0$iE6

    q5{qfUWIfbL~rB8m2$E_veajSUxSY&Eb@im_wIrUnt zia$LqFkUNtwSDFi_0Es;pBUwDwDg(GZ;j&H0rE62B`xOkT={00FtO$OoOM!rGbXim z73HRi1!m8hIU{0QV*WYv=AKiO%@i&NU~T4Qn@U z-{fpuzhTF^^&8i1T<@&kxO3B%og23~ojs{UI+IL0_1Qt^GF9^pYyjkEtL`!~<_X!ZB)_p`U!Iu^HnwY~ zKb?R&M#5=_u_N8yhLkf8 z(ml|w`O2=>aP{vn%ushQc9MSn^?mVvbnZq<1&(C_YG}L8QFcAVj88K%XuH-99X}pV z83`dl?gygBn(GhlJ65<*?g!HRvnpIb*>br3fG%RK2JqztMPIiLSJ(6ps;k%jc&v*r zT18*8s2H}ZEQYUJs+9aLTZX2S4Z^Ogyw|O2Lq(5Wz4rr#X^jj8!T`H=(Ot)sH>-eM zS9t9@%dkx~{ngg*YiM>_TI-vm(fv;A!G^;%ZS~H9`eQQH;4U1t48{jY=wK>wB9@6e zz476~g-psEub0U!%N;{c&IwL!Pbm4L)Uk-nJJ>O6gKlrHARKEvJ(}}k1ZCmTq*Y9(V zCsWRm#6VZ_WT__L{HV6Zri zRIU=ULkR5p1g~9hHlCiMbz8SPO+)EKXEj}-opsLY&MTbNwejXFZjSXQN>N?rO?N_m zO(vE~IMFtzp9(5j=Hw9Ix9bW+vAV6BolI;n?j-tS7;6dr_NPtDZy@ zoOU-^Fo)Y-owJm6-fxT#>`iv}C6Z28!s&~hNT!lbQ=&7KOec?LXd*%B51yr(Gj?KQz>ae)O&B zxSZhT?3LZBp68~yDt@j7EKIH1Wqa+q#IWmtlba*luyNkHF|_5x2f7mjWf(sXSL^Ym z*|JT5v#s+?UT#&aJy#Y`Kr`AE>9IELBQd=dB#b1isI1JgbRA&$F-Aa)&`SQAU)w-E;y031E z(d6NVflNHrAMZ-goRrp7Vjv^CTb-kLe{TxEelDZ6vGDh2=5s-|x<7HecvV8q>9_0I zMnA9*)$T|QCxfn9Vf4Kt@~2hrDufl#zs@!6TIpYlZN_eU)x!ejboP;1Z>{@Uoz_FO zjSY1);mxUSY^gh7PCP8KcoI7})PcDbH090d=u38*)0oDUYW4$z-GkK-GARaesA=x9 z7fSur+ioFf-gXz)s7gn2xZ>q!0h{h$Bj!wEA$A*C(FTlA1?F!7^aGcu=K}q{AYt^c ziGhJ+CfNQpt7~`Ht~##CuxqrrK3W}Zt=qPKy%S9i z4Rom+137cM^idZfNWR1J(^CGlcwM0G2WEJmW19`Tu3x)py|#Bb{OS6$*V!#&%J!*+D#kN%L~jriP=rNHnW}wC)BR;0e0Hi zRlbkq`>eCsuKZe7hA@LV<8;IwyxPKqi45MEP=DyuCIZ zpa9vu(*^pREtpqygx(ljx}F}YTXql5Eqia{K&uk5pPyHy3W6(iep2nMiOa7zlR!v>~y6%)7dzmip zVX$t4-xplYRx-!4N;cd$0^D^)D?7(wonp!U_WE1n3AF+5W1VO`Gc@QN8o(6zOsucZ zX~f2at2^}YS4s6H`AR&579q(Tcga@M+v7ATTZANU77SH*BMJ=BIH7)DpvMLNVA!=l zaRsxlT)S;rjSgx9(6vgBzdp>7f0{_UPD`uOytlJP-pB4{yZ*(n>r*+d;uU5AGNEp- zyE*G$4Z9X5t#Iy@)oV9xpN4JL5=&rL^=4}~-@yKT0`2O)hnZeGyqI>~&vvy!8ClJ* z?XGcF4mlmelW$wG{L~+ni~85AbK2`H!><2j;8BHC5_}e*`7T*8PsV?f+v{0u%Tqq? z@FUP(r(y3(^IaB<*i~DtY69(g`d+>tg9vbr-%4O@G?13t(5hY?D7NB-1NS z{uWTzE!AFiu7wlWUT>V9%@y|pv>ryaS8dltmG-JlQM9k_2fXd|f(dM|vVYyYar$+z z0^`~jd8b&M$JZ}9Sx+2UzIb@XYu)7-T*X6kzc*Tehplr8 zS|3|{$z$j2?-)CM{8ZPjdS3Cfjd4PEUNL49cR5=zhhR^#b11ZL8L09DTai`s#*Cp%9}v-@4wmOo8Pnq>H|$1T zY3_T&s|~xB8?M%83FBI!yx=Xj!gtG*w2 zj&VPrFaG8RrRvTg&`bqKMhEc_knS4lT({7L-!g>HaFr%> zQsjnRFZ5ow9yP{Y28J^0`iJ^x=^8dAqh+$R18jI-=4?JhUok45{L^P**RHyqe%V+- zv_fsGEB7tO+D%L*40qEzkIW*bX`B6PvNIFURHrkkcx)1EA?w;zpIiO;bGm%3Smvx7 zN~hLgU#nQ(I;@sn*V&i6c_Qe?&{GQ8i zSM&aLg`TB;Jdts_;;LEE$f#laQXtQP&y_w6#tHm(eV=jNYQZ?j^v5>7z5sX|B7v0QgM7?A`#XTFr<}OM}K=gX-I5sX*}jcYnoac>*Y@6`lX4% zQWE6vNVhdbHx;#fo4+HS=}#Azza-_y%)NXOm=fvqJ^q-m44WSS~|>C23noX4kHIUF@fg z>=+|ha+46P@O#ML&3^_o=@-wr=jg-~&ECF)$gv^A<*} z1ZHVso@S0+KW~VJT|Z?6LxleZ| z->4F=-+>L$r(s7BWLNVdb*K3JsZos*LIU-#n>L;q{p-IO_A0wwRsTBeOdHf*ziim` z)I{{J)6S~F_XA(?*wqM>0m}Y$8roH$J?4%R?lJ7Q`pV!xgQX;B&ex`m&nDBH?UE`M zVAtJ-z!fx7m+W<7U0tboIxTUSFZDdq=>xI_&Vo1J!(^+av}!|Fqb3s#{q6NGnmB;J z-8jDbmGgf1ns+Y!QBBR>+Iga-Y1TPcZMH1yaY_&44|1Kpcz3LGSiRgHN+<9+gC=}4 zCX*WKq?cY@fXNgF(ZVQh!em$|Nq@&g@27h=+m)0sh78N1)9Ni7Hr6_6Y@e4*O{WRl zL3Vw*VOKr(r7T8;(AArJr=wX>Gk-sDPe4Cl+15M^B?#&VBDO`RBa}bt2dKYxrb`FF zRtaja_ZscB(hn5Ze1h!y48yLKexNwJ2K57aWfr}}>PX+*VF~rKCmRoTbvP$BtPO2+ z-(7ciFq!Tf9&qYbU>aD*P&Yo)-R-1@`#X|->5*?uhgfj2=E^&tzkl_-%${G%j|tMY z)RJ+K#l!i-chA$EF>F*^qi&FkxP=WzkUf_KXW3Jhn(-S zSid(^`q4VhQ><#PUH7G8gFO|qvUNuHO`1k-B;Ig7^^`r zF#%7iSPe6nOocTSX!J@?NQ%E7c)4+(wFC=d_czoZboL!;XsbDh?zP1^u}Oakv2+FZ z4JEMSyqvR)sbFiJO->sY78E-hwsd{Mli;_jIbZwQp@Hr`y(F$Rmg(#XbGEh+9{IF? zcS`PUFwQE&@M>Q^Nq)QPUV-kcR`7ZlS_u;$IN^l7@MK!Ahsn7g(BlJiF4wJdu3lDM z?Ofg8)v>c5AK=@0t8-%4^3YCmQ}WhCUti2=f@s-DJ7VdnH6j>n3iG>>7ch%CJ`kKM zyjXX?Vthe%TJ84a?*}gTnr*=Wx?PW+j18)No;HT}6f1<3ohI2~zJ>5s;Piz2cKv5V zku6niJv2kJlNQCsF!L-l)f^ifS#Rim%_!6#EU!0= zr8^Ue>D3kZ?K;~ylY46R*0=3-nrj;NI>1hSb6v}x`aK3mX|TBlV>!{*hPrz7+F*4i z6&pw&kEie*t`s)Yo4S+X{dUEa;*q}<&d5mKaeUJW_3eyx_JnsQR9@*L)i@2nZ&$Ou zqTbk&D2`7UVNV;ZT*r-O*HAtS*z>GOx#j1nMj6=rcC9f=F~(nMDQi=GG+MJSwAHa# zumGX`nD9~T`~Y)a#$;L>Nzbae>tpK>*TuH2tdBJsSpiUv6Gpt_Q|47^GPQvMsx=8% z{r$jSSt}YYyt*HcLcGXu*Ye}3c${w3!@F+n)e=WG%qq+zWyJ1XBu$65*&B+WZ=7}vrHkJD)N5DT&I8iS>YX+WyDs*= z-+I2G%f7uET5HaTP95*;agEjQ$c&FQ+IX3+TSQw+NrO}8v? z<=V}YqdN?}cK-I-W|Xn7rm>;1zQw7p-{-U)#3+f}g}`7a5%T^6`(k~VRG4%Mmd5)J zbgTRYXD?$0zg^A#b=#~Rv$u=vhD|uuv1ee`zw?z1l96Gm?bSNQfP%ygzh zyeVpn55%)houl@DEPR(j-rq%LSGmJ!ZKX@`+f_f+2HSNYcCx@VD`V+65I^ZaV5$2) zhO5+A3g?~Xx2x_xgYDWKs$KUr9}2^+;VPB4?Z#sC+qH?=gYAkJ{2}%OwV0nc5U;N3 z#y*I}bOw{RA8>sAYYW@87XAuf|2k22b$5YvR^zfsk0i8TQO*s*RI;o2-tg)^Z1eV{ zs;dW6$xN~{+2?e03{;1>8}Ob)tUo!>h~|V8(Kf6Z@P@Q zFd>Z-)<*ZNOKjS{)rqZ54rMTF6YqUOed!yf!gnE5kQraSV?8wMLbKh^JC zzA~LN$0iKXr&)&EUbP}eG=RUQDuekh(Z0lBH)a#H*CqQ0`{G%Hp+xANml5C4zd_D; zNppc{ydf7@qQ3cO_uKWTk$Fp19kyTVi?=6_x08kU#QF!~`sJ6wS1k0|b)%ySbdtv% z6o_k8xCIugXuBO0{dfq?JYwceTjG`%+C(x*mYz7R@q*$6(S0BlHnIv zuziZn;J0hS5VfT$ikq8(%hPD7sowTI@xDZNPsU&<5$4!+6ZR+M0?|@wN^IB#mZ)$3 z+5L7MFfyz8gl)-_@f39hd*bQASR!RGln8U|y15?{-|*|tP=VAHU<>+i3oKFJ{ImP* znlv&iyVlbTqV|2suJ&k83Ntnhh7zIAu2{GMyT;{|rS4=Gp25N`uta_H&+fPDkdYbv zK+jM|b#tP-dkB*>d(a`YhPEj%%E_@So)B`&a|XjK&!}3Nq2I30GD=kKbzdsp-U1LME)#(_{#H;Di z3a`1koW?|Y5Ee~#r(*p@d^*a|{&YgWU7uj6b0n3>#G8{RvFm`GU9{Us3j;RA@LcTR zJH@?tl@iaaaXK*aax$KnJl`!Yww8Xoo^6OS=D!{cfA;~*f5rX-BzU^*J|OoY$(f&J zj=vgqEyJ!3%C02%Ot9-(`HNTkz11c=d(zI~L@G0c=k@)2)R&@+23;al^6AS6>Kg`Y zN|ZNQvXcq3Ld_?1SgCbv*NM+zsrR~=U_ z-&oIG)VxA|AA1smLDe`Z@d27mPTw{vQQ^`hpuH~g&euMRb+Y06-*b2N-CUy1X7=g3 zufuMiT`%K`FAucqtzk~f5Uu#Gsk1lMm&Ui`FHbuVUf7hP$vc0*Z`W00+BMYaE}}V} z=yPgQ$&(l?b0E4fs|qoB?dtCbHW>ZuY%GqcOAZdF==F=Uy7LNW!;T&154l8K)0OPN z;!v8EK@YS|cu6VO9EZ5YL5Ug`o852MjfP#TDt0Z>uztHf#gL@Nwf857(sBT{t|!xz z3~^XHXZ#iO2h@%kJyakKzlL6*QMd9!zg^8K<*;i!)sJas8Qj0L*I^Vk73&L8A@BQw z_$C^EbqjPlLoYBy-NzQ?x2tJ4%**JB^><*EA-#@m!(I!h>DU4bO7+=wE1IY(P|nN< zy}*LBD}~u_S971xEmhbjr&IO;Z6}j>&y9D7Mcu%UqN3NX^twQnCvAE%iPzjAmp6(U zWr+6M^=_jS)xWk5VJLr~yFIGD8fm1L3cYs4`z<{~Yfu&G;Kr7^pi;}3`22pmKHE@2 z*|ipJwzs_wZ71GU&i+-tk5w}>u=!(WFE%|1zeuBY<%E8_zQHI?+4ax>=4G73gu+yN zZMgf~dE0B(c86wV42=}$Ox*IwadPjsiSz(6B)cb4SRyRe5c)nt)no|=iqaE)v;76 zHe5Z`r@_N|u3i7ew%lsiwP^?+b?(7Oo}E1{QN1CFHhKvDo`cmS*j)Tl*V2@;=w*y@ zy!&NzCDSBn4E}tRFqt7=)=~IeyK07c8o)Q+$JW<{y~#f0t9|yT;prnJR>?9ahXB7_Ut)}B?P=K8;M69Qa`>)4 z+`ZnY{?m8A46HNa@4qbM6a7-duH`=WE5qmv%dKP)@@;%LUfXpM=YLtnu0>eVneVn}zlx((5=o_&(s36KK~p&hnM%vaKk)f*CpyQ_l`(|W&*oae148$Urc{<K%W@`&eEdivqFea0ei-S3K-Po_z8+KBG z^pdM9jsl(4UCF`t@dT#BV4YJuy)6H6nc}nxBbVQ<<}!G-e(Ol$)>sPjr`nsa34W;k ztIw`m;yPDe#DZ92M`#a=&?szJd40YTk$F7^Wy=G9Ld?y=v zfqB^^3?{!_2Mw{xuB|csvU@*Xav8}b!yLPA#yWX=!!;-iB+K@MTwuu>=PST(*ISLO zn3vHP!`OBzIoOlzNDd~kKar7KGW6QD3(MroTVBZu=Pkf**QXkJ)%`$CM{J-gi491? zejS@LKdXzoftW6DYQK-oxz9SsuOg#Io_EG`}LM6uXLj#6AbB*b=MsA zzCe$=%r|t{&3o)SMqHS1HOmiE=46mXLoIsz)nSFoycLGFL6+jRx!T99|{(ix>)r^4e?!Butd2Y$^RYl|TxdZeZ`+KSme z8yg#%_czqyvk)7Ml?=OtI-zN48w>zQpF4D{EeU9^IOS_DA1~OD9TQ%^I3I zAqw)_^=UzN-CD70VMh1c^;D2uw^i&~s$K64vg`JWT}!p=T|su;QL$^OcD*|zkj{h zFq@t~px<*3##82UM1!+9*a~?CPZ}_a;&t+2t7Vi>EcDxTmLY0|(;BPmt?90J_Qcv^ z(agbkO{o*a4e3G*_I5*Z2D4sLaqOD6I(qov=0cuQz4PGHCsLcM2Qhi3*w6fWbSo|3 zx9d7XVAElz+No=;t8Y5wV3+OQYJ4fnNG=)H^uwaDu60p#0-4lMzq58v^nm=ZM#-X2 zvjD$c&4HErqiyxg_<%gw)}bnw+pZ%M!lt@`{dQe#T$&nj)~$u=5$j>q0``X45X|dV zPcoJ1913%_c$k_NCX422?hhV<^-3614+3aE)ItqmYn;|(Vjz>I$yhOYZ{=WSR#yW1>1L9tP^T;zrIsHC z+4U;el|L0T;+IR4HO~GRz9Jo0-_XN?c#LOb1NbRF5EEqAHL$DRn@s!Vwd=unA9fkQ z0x^8{*qp^wu2Rb{H^{Elu&aJ2tNn6mqT1^b>{pCNIt_mR+D<`srTt$WX3)Oo58GFE z#XBra9HeU(Rv*Vw-9xmC%#?mj8)R47|8+MTQ2SxqQ_I8sK<8B4Wkl;gnosY!vwWYm zotY+b|5s;Vh;}>LwbGn)JDRdnDBf(ZOIUB(M-TtkP~I@&);Kk4FOD#TO(GdVcHIWM?q(geUoMr`IQ0W^u~wKL`7D>R1;`Du z>vq`n6wAJ}s#Haxn+lbqDM^Q8%z_oVIxXU^0cznwP7Jr$ug% zU3ZdQ^^L3c%cR{JCyG7#!d=5yCRGa(8)Vlfl3ge029}<;q+y*w8s9ER_sPs0WY??7 zuKLDR`(>)c8mDe#K6aUkI4xp>?7EBWs&8DiUncF=I4#GI)9_%KuE7ee5r@G z)PPrhQ}RS&y7UQtyDp}Ffd7_VP2bvhQdRrNU%gHW#cyh8jq1;N6eG~PE{?woQjDOG z^NlJSzAS+$u&FZ?;!$*NY9imb<-byVg!)yXx=5Tw>Vu=;)^;l$7dfCpn~cD4$m2Su}E$ zd;i*RJY%ijuyNDoEnBy3-=R?L^*y23Qwym-+PXpCXHARc@w#FGcI_BR!#;P|Zb7aD zJe*8)#^r;7ky<(&k&pS>Y3GD2q>zus#fG{P$#vQ4p@H6kFza6&Fu!c?Ewjj`n-&>`UG}6!N>MIwiB{E#G**w{oaf;z{t^ zRqqE+-GOP>_`nILv+w2-%kySGlk95lqnG=>VC&{^-xt)#4q)<(^Lx*F@gaFX!0!w6 z{p)N)TxHzFFh)Vp-w#}G1rIMLU(nu{GdcPBe?;EP`Z*|K8o$l}p zEM4V1CHU>yY2;LPt?x(cl3buo^tbJ%dzXG{%!JmaXqR)40fYHXLUN>nTlr$*}pWu(#y%^x2w5% zg|cfjeiA#XwwGaRiyXUd?%yEonwAAR=_$OIhTpE{har_+n`8a)K6C-?b%{*4;{!gs zZkKi)-~yda6gXYl>obg>$Cj#t*x{1ygWC7TIum{6wQEmekgi<1NauJtiZp6hPPp6m z9!B54IwVM{2FrUdXe}p7LPsN3SKSmo$u1y74IA9EnTZH zB>4M*O@`Rky4vRYBh`(Gj;3VSP+z?Iu(_MD!B`|bkf@7wIeU}I%pgVxGtTP9cz3LG z__SZ5`jcHn)<|b_?W(`O)ufZ)yWii6ZipU=wqjFgBeirm?)SIk#Es|?Dtm*I=$`}| zlIK}z*RFcbYgP@%%KQgK5|j~+s22n9QzG2!R#T!gm6RV$!k(I4g-_Qs`+@%SNyx~v z+GS@m?8;@C?+RBeTQ`(Wtt;2(3&gbkenHOsSM%k7-e;d4e)?k>+G{`5Gws`Ff6t*U zo2SKQ`~LQ-$6v{S@y@PvtUBEj+gLq-jl~ByZrK{DU0Vj@1JUSyr@n4aw8j}6>gY>! zI{%-&cY$x@NDn(P4{0=9jii;lFKHh&Ls5bxf^UvSv%}c|0g!}-ARz+78A+C?2D(YM z2%xdu4GyUF#)|F4uVfR)v7Jl&h%er|iyyJ$#5v#Pmz@1`;>2-&m)u>Pb7DJAe9oOW z&&}EK`RByeebrq>d_XrzJgS;N4_X>_p}Xs=sy_-}*W;_N_B64|Mre-P73SsYuI_f@ zw{o4m##eo}EC2ZC9we@hA{4D$=V!#WvmPX_1vGD%DCy8#CwI(JLMiTQB$E-kEkwjw zUr>Qf6I1nS2^Jigr0AqG=(`zFgg0C4;ERYWs=88weEaXP`FFwggmj*e9(cZhG>**b zT#`Kh%8dJvpuf2?U0{$fOrxTZ?A@#&v8OJ^T^Hw8Q0@mBuZ`!dWo2|6cH^wK8H_Un0Z2z@1u6V-r5YpCn%Cs@gG z`*qQmhPaF4q@>xfq*0v2{*Z+0E9Z*auX)MYq+EBx=l-=x5AgApONgb|)+!Rrg5U>Q zYzNMp#3@~Ye(aNIU=VWg-OV|nFX_*~Ki7;iz_x93HU{ex#kBC4%k^27_3vpef(9RH zvq1JMtU1*I|3urT3m@>Ia?d{$& zB0RQN4?K>3>$&wiYe|xeXR@m>e;CiliP#L}lyVhXS(~~=_lg_zQ31@x%k>@9$$B&O z`I=G!XKbdsr=u-)IyQ1I13PkREotEF4Q$xU^)Xf!T5VhAVMLq1M#5|Vddt%u;O*Ee z4p-t#aFvXrQkt}jme^&Sk-S#X>Lfv|U04#+h1E8**LI@2dr$UD1^04Iv#fc!7GN#A z*nBSI4DDG)?=d!W=Ks{E` zjMxtRt2)wRrh!c(I~U$V45wef)^Ck6Ilqdy%J!$3Fktqjhy3?zREm(Vi{p9xHN=%) zlXc!$&kU4xP`e!Hcov`E;{Div5g^y=5KO zNBrNYsugNG1kCp|qE+ZyN^N;FiBB^aiH-IEe{Wqn+ekT+&c`zG<#ZyJSYN-LPQ}EU z4@B-wPm_B}&E7RkYMI@MtBgh_`!dwv%I66l8*&x!O*Odkd4k7>T!nJw^8`-}xeDdV z$6G!;{r7c+mbaYcd(8G1c@#|nfg4Cyj_yh&yxjhkHuHS?r z&X43^zai>`M2cI77Cqqjb(kS6$$@t3;G+lrSQFO_b&>(I%v*GW@{(3ZHw6Tn>#M_c zp710|(M@t7HLSP3elOxRKavOix(rq+wqCThzza6IDInO)RfX9DNRRBW^hil53?x(_ z7g zMS;PDQUUwS#KsIUp||Y#!{}&|%ZUO0;EPmFtZ2>%%v&#_=sY*KAK>$bf7pw_4&#m^ zzvUAh#_i|FF;_lsC~Z>P2SjMymiy?}`)HgnO+D36GiqM1Vm@$sxCHj=UHtlcNHCzN zXCNJJ@51%K0pcn<8(|u2X=deZ58OfzM02m_@~O=A>zk>K99R>Q=h008!Nh7hmnDS* zTZ_@gD*P~1vZ`BEu)2pnmr^FtD)hW&rl#g%Q?s#|mtPQ&W-ubWT(8hd%#IXTp;Ftl zs$v&+sXpL~=lBCXo-?_7;L@QbjUHw8L-aGSbG*|YcsLT_^Dv{pmCqr{&f|VaUtDJ* zA3tnoajwq-S3c)0n`>D2F~MA)Vi3oW9+1s-9L4}DHY_f%=mrsvw$a3T=#pK6qvVs3 zg(sT(TR(%iertAZ`O?VKw5f1Dv9p*yO3LthGXaWlf$a~&{gC`D;tIDfrB{-Yda;oR zd~K-xN}}|;>*Ss9_G7D+o#tZo{Ha%ow5huAh}(lCEH`-H9grW>cU80Jj6QGzpq=$$ zcik~BIXA=HBG513`x`z3*M5uM2;hKy z31Ht?HB>ekF1Ch#<;?)TE{5LE+<`S4>G;}YZha}AdOejB%sNxs(Th6lB<;HICYDiy zou$LzhoHfgBl{3~jj7YK*Of{IN?X)oCGY^t9};w4)a|@sn$)*sS1_B`aTavgzs8X! zD0@AK@p8qDD&&8ls+P4%t%sESqGlbTw9~b%J7zW9Z3dw$iv3~?$~7-nK5sxvFm^ec zi^Wx=pe;dvGd3-{os~5#J6AOIs!j3-RgFx8!)d6ygAUbcVexV8uVGbzuQv*!W<Y`|H$F{s&f1rtLUfEN2b<^0&8}~I+bU9nNg4G*Kj@UAiLnV_P z^m6?vlqA&G_*!x!{(Nq0HJ(hSL=SAWa8+Snvz$^mcwzH6A^Jkw4EF0dp)>Bn#tHeH*55*0hvS58e!-r{Zh6KDxqoc}&yEthLsr6R zwo5R3i%{uqr$9u1tIzh|Y8ii>N9;#NM@C1=Ssj~HxDcMt`cU00& zdw|WuTxJj9u@%|#1yO31MR!pSjUOTxBIR0-xR!)`z5v_7AN75Rx*j|H{fEn-$h9kW zx$^nKDN)eckP}`zqR63NGQv3UIm0%v^!!LPZ|rFmvH@+ZP>mO2{mQw{AX@ak%p;nD zb)w(_cEC0@KM{!^*I5)x`g<$BkyuORLseHPK0mH=h^y@B?r09yGOotg!UoolEAGcK zmjsBk*kCl9AZwZp8|vf`EkYLE_km)p+K3iDBqCN(FE~|QaXS=CoSRVpu#yN0QftZ5WsD8?|I6v^yFkUeWu_@08m)m^u7DCJKch9Z$o zC{$w$SwhgQVel9Njvlz^wx&3=FQMn(%qn)evTX?7#^^8ww*OX6-zh7H7dr^B{kN=c z<9Co$hmSVu>n#@Z9SVDR^hCg^uV>x*dWA_+5ZBdgPvTFEoGKSIu)a_U-B{kSD2%4o zLoi%G$5k#z+|dxa=U$#Yp#{iw999;9pRBT8I`GZkNf)ub z_I^d3C|faVKx-7<)rzNUmfX;*&@ncnkqYzp{Bl zZb!uDxo9+UOk5GSZtDp}CAoug!6<=4hk^+n&_u}XRYplK^dy36)`bi1dyB8%`UH{) zPBf_*D!MWZwnKo9Tl0N)`1(z3BS6{_GJM8EfR0<&BW``=^^~rQ3+jln9|XL?O>qb%1!+7Z17UWll- zH__{tPWua>`t@>)9>Df4r=7n+O&`}+?yLgaWymg9xb=WLJIL+bu>F8+u3^;!bY!J< ze(NV?!+ZebQ@@W35x4FCRku4E`D;z(zLxw3IGQdEKb%N_`Xl1wE?L_7g5$5dC+9D= zeL7J z4ovypr%}A0nfjKMXXjph6!Yk4OA}g4=kifENf;j`8>#rJo`3!FWr0W?QB;0h1uF=W zXIj=(UanVYLx3HN3Rt2TtjthkeqGeLNj`gRiIRPqa_~M;+%9Vrah07n zwEtF3c3MHo$6PApPu5fj%}u3w{wtL$7pNc#1K0J%O$`t`*jR{=lMhJK}E-1PVc_vHK~ zk@IJsJ+pXr``ojUGp|euck{s3Z{1l-!`=`m-FAa){Z_4_gYjIukpg+H!IdZX9XtT% zmmhxR!nF^)uuP?X)sf=DGlQqknEa;UlvPUg9pl5 zv1TiU;|FHxqcBY9M0aD0&SAImyj;26ODorka(}PeRE~;Q(e4uv+XYcqBI7C}Ye!|d z&FfyS-0r27>y8Aj%WHQ;aFvm@Hu)X(n3rpcJ=)3@OsR$IfkmSR-m_xy9oXWq8)eYH zdVqNJ>oViI2tL;oa_MAfaLyW3&gvYXczSRg1?RAZ)5Zd-z!2k8*@!bh=Z(n#c=pro9fmT7iX zQ{UHOyP7hM08i?dcp!lDIPASWcP&OuwuuExg$?05PXtg1-z2>H^`D~W zs2*5cU(Zur0CQXf-4YUfko3SWBVt26fM9eG^wR_Xtb_QyKKdZ&0dA4`D+t!GJ%C_z z5X9{P&h^(&{GlE|FgghO>4AUILHu4H1wAl3KNIfu0I#pVj$jSj0|-V3K|ek4uTcD< z9zZZU2>R)P-{>HIua7!Qw1zaXc;9wwD;h6f@o z;{%SMJ{TTwJP|E?ta*H33vqSyfaPYF4vP#22->Sr6k*+=+j#yR#I+badq^7%F7)aHVN9S zP!wUS9(WINZBtCwk3C53fv-bc58DGnJ&$gvTi--tc`XMExb~Gw5f>q$;lx_CVP%GYzp0^~ZThNg-(eOGRMb^Sg*$?i-9$hBCiSvL3{u=MvdZ~++_ z$Szmc12kV}G#MaQRomB#U_#_zEtNt87IWqPU#9}(ItDC>ZP-eQu&Qf?qRwKj&oMnP z9W+-?6xJJ(T1Rf6n{--#eekxkKKe)_hnq$^OXwc2cCAWa3)03NF`;;|R#FPYNoHF& z%l8$tI|n*qvLj52TVEe?ikTkKBeQ@`rO_yg$epe$EX$hjT$qjnB zehW%)ek5Kg>aZE-)`q5(%96S6>eZR@G+{{+n5K}BBr2WEpqJ}+qU3-pj4tgMmFKOk zRYf<^Eg`|?`U+gZyBs-8l9VJQDJ0(~3-NOOK@@3z1U7m$w&1t9wNx_1`y*=Rs?HIb z90A=!wq+!TN+vt#<@(o9lJg_El2Y5*g+BbQA)(FQ!c{HL6S)bZvdIlLxYD)(J+L2u z+qxJtz@~q0CIAfnIh46Di;O|Ez0#~i~Z}P0=bMig13mn+L}qu4>(Z92G>{4^)Z3mP7;N= zhNrehB5r+kTUKWogvSw#58yx_g$Kt;1qKSq+MU%^;j≪5lfLUWUCP=)t*iI|6!5 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℞lG)0+;`su~b!)(NNqS3vQO*^QYXjG<0oSGJ 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%0DbqsN(o)-sPSE!y@EA!>@dMbz~6#cDZF>~s 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%0Dr!ZDiL8+tg#>Q%T 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

    W@q@~JiCf@kmg;-Cs)NuUmXEG3&ijV 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≻xxd@Xf%xPktQYQCg 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 z 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℞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 z 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 F{{g7g{z?D< diff --git a/configs/php/Makefile b/configs/php/Makefile deleted file mode 100644 index ab6e35b..0000000 --- a/configs/php/Makefile +++ /dev/null @@ -1,4 +0,0 @@ - - -all: - c++ app.cpp -std=c++98 -o app && clear && ./app \ No newline at end of file diff --git a/configs/php/app.cpp b/configs/php/app.cpp deleted file mode 100644 index aa0f447..0000000 --- a/configs/php/app.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* app.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/03/09 01:13:52 by ochouati #+# #+# */ -/* Updated: 2025/03/11 14:53:35 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - -#include -#include -#include -#include -#include -#include // For waitpid -#include // For strdup - -int main(int ac, char **av, char **env) { - std::vector envs; - // std::vector args; - - // Copy existing environment variables - for (int i = 0; env[i]; i++) { - envs.push_back(env[i]); - } - - // Add PHP specific environment variables to simulate $_GET - envs.push_back(strdup("PHP_VALUE=variables_order=EGPCS")); - envs.push_back(strdup("REQUEST_METHOD=GET")); - - // We're going to pass the NAME parameter directly as an argument - // This will make it available through argv in PHP - - // Null terminator for environment array - envs.push_back(NULL); - - int pid = fork(); - char *path = "/usr/bin/php"; - - // Pass the GET parameter as an argument - char *args[] = {"php", "-d", "register_argc_argv=1", "-d", "auto_globals_jit=0", - "-r", "parse_str('NAME=achakkaf', $_GET); include('index.php');", NULL}; - // args.push_back("php"); - if (pid == 0) { - execve(path, args, envs.data()); - // If execve returns, it failed - perror("execve failed"); - exit(1); - } else { - waitpid(pid, NULL, 0); - } - - // Free allocated memory - for (size_t i = 0; i < envs.size() - 1; i++) { - if (strncmp(envs[i], "PHP_VALUE=", 10) == 0 || - strncmp(envs[i], "REQUEST_METHOD=", 15) == 0) { - free(envs[i]); - } - } - - return 0; -} \ No newline at end of file diff --git a/configs/php/index.php b/configs/php/index.php deleted file mode 100644 index b3465fb..0000000 --- a/configs/php/index.php +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - <?php echo "PHP CGI | 1337" ?> - - -

    -

    -


    -
    Hi, $name"; - echo "

    Hi, $age"; - ?> -

    - - \ No newline at end of file diff --git a/configs/py/index.py b/configs/py/index.py deleted file mode 100644 index e69de29..0000000 diff --git a/configs/ts.php b/configs/ts.php deleted file mode 100644 index c939910..0000000 --- a/configs/ts.php +++ /dev/null @@ -1,100 +0,0 @@ - 0) { - $input = file_get_contents('php://input'); - } - return $input; -} - -function parse_cgi_cookies() { - $cookies = []; - if (isset($_SERVER['HTTP_COOKIE'])) { - foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { - $parts = explode('=', $cookie, 2); - if (count($parts) === 2) { - $cookies[trim($parts[0])] = urldecode(trim($parts[1])); - } - } - } - return $cookies; -} - -function handle_request() { - $cookies = parse_cgi_cookies(); - if (!isset($cookies['session_id'])) { - $cookies['session_id'] = bin2hex(random_bytes(16)); - header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); - } - $post_data = []; - if ($_SERVER['REQUEST_METHOD'] === 'POST') { - $raw_input = parse_cgi_input(); - if (!empty($raw_input)) { - parse_str($raw_input, $post_data); - } - if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { - $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; - header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); - } - } - header('Content-Type: text/html'); - ?> - - - - CGI Request Information - - - -

    CGI Request Information

    - -

    Cookies:

    - - - - $value): ?> - - -
    Cookie NameValue
    - -

    No cookies found.

    - - -

    POST Data:

    -
    - -

    Set a Cookie

    -
    -
    -
    - -
    - -

    Server Environment:

    -
     $value) {
    -            echo htmlspecialchars($key) . ": " . 
    -                (is_array($value) 
    -                    ? print_r($value, true) 
    -                    : htmlspecialchars($value)) . "\n";
    -        }
    -        ?>
    - - - \ No newline at end of file diff --git a/headers/Types.hpp b/headers/Types.hpp index 960a27e..03ffde6 100644 --- a/headers/Types.hpp +++ b/headers/Types.hpp @@ -19,13 +19,9 @@ # include # include # include -# include # include # include -# include -# include # include -# include // For getaddrinfo #include #include diff --git a/learning/cgi.cpp b/learning/cgi.cpp deleted file mode 100644 index 146fa28..0000000 --- a/learning/cgi.cpp +++ /dev/null @@ -1,126 +0,0 @@ -#include "request.hpp" -#include -#include - -// SCRIPT_FILENAME – hold the executeble file path -// REQUEST_METHOD – hold the method name -// CONTENT_TYPE – e.g., application/json, multipart/form-data -// CONTENT_LENGTH – Number of bytes in the request body -// QUERY_STRING – For GET requests, the URL parameters -// HTTP_ + header name – Standard headers get converted into environment variables -// HTTP_USER_AGENT → User-Agent: Mozilla/5.0 -// HTTP_HOST → Host: example.com - - -char **createEnvironmentVariables(Request &request, char **systemEnv) -{ - size_t systemEnvCount = 0; - while (systemEnv[systemEnvCount]) - ++systemEnvCount; - - char **envVariables = new char *[systemEnvCount + request.getEnvSize()]; // free this - size_t index = 0; - - while (systemEnv[index]) - { - envVariables[index] = strdup(systemEnv[index]); - ++index; - } - - for (size_t j = 0; !request.getEnv(j).empty(); ++j) - envVariables[index++] = strdup(request.getEnv(j).c_str()); - - envVariables[index] = NULL; - return envVariables; -} - -std::vector extractBinaryPaths(char **environmentVariables) -{ - std::vector binaryPaths; - for (size_t i = 0; environmentVariables[i]; ++i) - { - std::string envEntry = environmentVariables[i]; - if (envEntry.compare(0, 5, "PATH=") == 0) - { - size_t startPos = 5; - size_t delimiterPos; - while (true) - { - delimiterPos = envEntry.find_first_of(":", startPos); - if (delimiterPos == std::string::npos) - break; - binaryPaths.push_back(envEntry.substr(startPos, delimiterPos - startPos)); - startPos = delimiterPos + 1; - } - binaryPaths.push_back(envEntry.substr(startPos)); - break; - } - } - return binaryPaths; -} - -std::string locateExecutable(const std::vector &searchPaths, const std::string &executableName) -{ - for (size_t i = 0; i < searchPaths.size(); ++i) - { - std::string fullPath = searchPaths[i] + "/" + executableName; - if (access(fullPath.c_str(), X_OK) == 0) - return fullPath; - } - return ""; -} - -std::string executeCgiScript(Request &request, char **systemEnv) -{ - char **envVariables = createEnvironmentVariables(request, systemEnv); - std::vector binaryPaths = extractBinaryPaths(systemEnv); - std::string scriptExtension; - std::string interpreterPath; - size_t extensionPos; - std::string file; - extensionPos = request.getPath().find_last_of("."); - if (extensionPos != std::string::npos) - scriptExtension = request.getPath().substr(extensionPos); - else - scriptExtension = ""; - if (scriptExtension == ".php") - interpreterPath = locateExecutable(binaryPaths, "php"); - else if (scriptExtension == ".py") - interpreterPath = locateExecutable(binaryPaths, "python3"); - - int pipeFd[2]; - if (pipe(pipeFd) < 0) - std::cerr << "Error: pipe creation failed\n"; - pid_t processId = fork(); - if (processId == 0) - { - close(pipeFd[0]); - dup2(pipeFd[1], STDOUT_FILENO); - dup2(pipeFd[1], STDERR_FILENO); - close(pipeFd[1]); - char *arguments[3] = {strdup(interpreterPath.c_str()), strdup(request.getPath().c_str()), NULL}; - execve(arguments[0], arguments, envVariables); - std::cerr << "Error: execve failed\n"; - } - else if (processId > 0) - { - close(pipeFd[1]); - char outputBuffer[1024]; - ssize_t bytesRead; - while ((bytesRead = read(pipeFd[0], outputBuffer, sizeof(outputBuffer) - 1)) > 0) - { - outputBuffer[bytesRead] = '\0'; - file += outputBuffer; - } - close(pipeFd[0]); - waitpid(processId, NULL, 0); - } - else - exit(EXIT_FAILURE); - for(size_t i = 0; envVariables[i]; ++i) - { - delete envVariables[i]; - } - delete[] envVariables; - return file; -} diff --git a/learning/index.html b/learning/index.html deleted file mode 100644 index 71d443b..0000000 --- a/learning/index.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - Simple Webpage - - - -

    Welcome to My Simple Webpage

    -

    This is a basic webpage in a single file.

    - - diff --git a/learning/main.cpp b/learning/main.cpp deleted file mode 100644 index ece3c12..0000000 --- a/learning/main.cpp +++ /dev/null @@ -1,116 +0,0 @@ -#include -#include -#include -#include -#include -#include "request.hpp" - -#define PORT 8080 - -void executeCgiScript(Request&, char**); - -void leaks(void) { - system("leaks -q a.out"); -} -int main(int ac, char** av, char **env) -{ - // atexit(leaks); - std::string req = - "POST tst.py?name=achakkaf&filetype=.c HTTP/1.1\r\n" - "Host: localhost\r\n" - "Connection: close\r\n" - "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary12345\r\n" - "Content-Length: 173\r\n" - "\r\n" - "------WebKitFormBoundary12345\r\n" - "Content-Disposition: form-data; name=\"field1\"\r\n" - "\r\n" - "Hello, World!\r\n" - "------WebKitFormBoundary12345\r\n" - "Content-Disposition: form-data; name=\"field2\"; filename=\"example.txt\"\r\n" - "Content-Type: text/plain\r\n" - "\r\n" - "File content here...\r\n" - "------WebKitFormBoundary12345--\r\n"; - Request r(req); - - // std::cout << "Method: " << r.getMethod() << std::endl; - // std::cout << "path: " << r.getPath() << std::endl; - // for (size_t i = 0; i < r.getQuerySize(); ++i) - // std::cout << r.getQuery(i) << std::endl; - // std::cout << "query: " << r.getQuery() << std::endl; - // std::cout << "version: " << r.getVersion() << std::endl; - // r.printHeaders(); - // std::cout << "body |" << r.getBody() << "|" << std::endl - std::cout << "ENV:\n"; - // for (size_t i = 0; i < r.getEnvSize() ; ++i) std::cout << r.getEnv(i) << std::endl; - executeCgiScript(r, env); - - // int socketFd = socket(AF_INET, SOCK_STREAM, 0); - // std::cerr << "socket number: " << socketFd << std::endl; - - // struct sockaddr_in address; - // address.sin_family = AF_INET; - // address.sin_addr.s_addr = INADDR_ANY; - // address.sin_port = htons(PORT); - - // bind(socketFd, (struct sockaddr *)&address, sizeof(address)); - // listen(socketFd, 5); - // // std::cout << "Server is listening on port " << PORT << std::endl; - - // socklen_t addrlen = sizeof(address); - // int new_socket; - // char buffer[204800]; - // // Accept a connection - // const char *http_response = - // "HTTP/1.1 200 OK\r\n" - // "Content-Type: text/html\r\n" - // "Content-Length: 311\r\n" - // "Connection: close\r\n\r\n" - // "\n" - // "\n" - // "\n" - // " \n" - // " \n" - // " Simple Webpage\n" - // "\n" - // "\n" - // "

    Welcome to My Simple Webpage

    \n" - // "

    This is a basic webpage served from C++.

    \n" - // "\n" - // "\n"; - // // while (true) - // { - // new_socket = accept(socketFd, (struct sockaddr *)&address, &addrlen); - // if (new_socket < 0) - // { - // // std::cerr << "Accept failed" << std::endl; - // close(socketFd); - // return EXIT_FAILURE; - // } - - // // std::cout << "Waiting for data..." << std::endl; - // // Read the request - // ssize_t valread = read(new_socket, buffer, sizeof(buffer) - 1); - // if (valread < 0) - // { - // // std::cerr << "Read failed" << std::endl; - // } - // else - // { - // buffer[valread] = '\0'; - // std::cout << "Received request:\n" - // << buffer << std::endl; - // Request r(buffer); - // } - - // // Close the sockets - - // // std::cout << http_response; - // send(new_socket, http_response, strlen(http_response), 0); - // close(new_socket); - // } - - // close(socketFd); - // return EXIT_SUCCESS; -} diff --git a/learning/php/Makefile b/learning/php/Makefile deleted file mode 100644 index a2255f8..0000000 --- a/learning/php/Makefile +++ /dev/null @@ -1,8 +0,0 @@ - -run: - php -S 127.0.0.1:8000 - - -e: - php index.php - diff --git a/learning/php/index.php b/learning/php/index.php deleted file mode 100644 index 42f120c..0000000 --- a/learning/php/index.php +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - Simple PHP Cookie Example - - -

    PHP Cookie Example

    -

    The PHP script above checks for a cookie and sets it if not already set.

    - - diff --git a/learning/tst.py b/learning/tst.py deleted file mode 100644 index 70bd15a..0000000 --- a/learning/tst.py +++ /dev/null @@ -1,8 +0,0 @@ -name = "achakkaf" -age = 19 - -a = 4 -b = 3 - -print(f"name is {name} age {age}") -print(a + b) \ No newline at end of file diff --git a/length.cpp b/length.cpp deleted file mode 100644 index 5f567a7..0000000 --- a/length.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include - -bool isCgi = true; -std::string body = "HTTP/1.1 200 OK\r\n" - "\r\n" - ""; - -size_t getBodyLength() { - if (isCgi) { - return body.length() - body.find("\r\n\r\n") - 4; - } - return body.length(); -} - -int main() { - std::cout << getBodyLength() << std::endl; - return 0; -} \ No newline at end of file diff --git a/otm/ART01.md b/otm/ART01.md deleted file mode 100644 index 646f1b0..0000000 --- a/otm/ART01.md +++ /dev/null @@ -1,68 +0,0 @@ -In the context of web servers, a **multiplexer** refers to a mechanism or component that allows a single server process to handle multiple client connections simultaneously. This is particularly important in modern web servers, where high concurrency and efficient resource utilization are critical for performance. - -### Key Concepts of Multiplexing in Web Servers -1. **Concurrency**: A multiplexer enables a web server to manage multiple connections (e.g., HTTP requests) concurrently without creating a separate thread or process for each connection. This reduces overhead and improves scalability. - -2. **Event-Driven Architecture**: Many modern web servers use an event-driven architecture, where a multiplexer monitors multiple file descriptors (e.g., sockets) for activity. When a socket becomes "ready" (e.g., data is available to read or write), the multiplexer notifies the server, which then processes the event. - -3. **I/O Multiplexing**: This is the technical term for the process of monitoring multiple I/O streams (e.g., network sockets) and handling them efficiently. Common system calls used for I/O multiplexing include: - - `select()` - - `poll()` - - `epoll()` (Linux-specific) - - `kqueue()` (BSD/macOS-specific) - -4. **Non-Blocking I/O**: Multiplexers often work with non-blocking I/O operations. This means that when a socket is not ready for reading or writing, the server does not block and wait but instead moves on to handle other connections. - ---- - -### How Multiplexing Works in Web Servers -Here’s a simplified explanation of how multiplexing works in a web server: - -1. **Listening for Connections**: - - The web server listens on a specific port (e.g., 80 for HTTP or 443 for HTTPS). - - When a client connects, the server accepts the connection and adds the corresponding socket to a list of monitored file descriptors. - -2. **Monitoring Connections**: - - The multiplexer (e.g., using `epoll` or `kqueue`) monitors all active sockets for events like incoming data, readiness to send data, or connection closure. - -3. **Handling Events**: - - When an event occurs on a socket (e.g., a client sends an HTTP request), the multiplexer notifies the server. - - The server processes the event (e.g., reads the request, generates a response, and writes it back to the socket). - -4. **Efficient Resource Usage**: - - By using a single thread or a small pool of threads to handle many connections, the server avoids the overhead of creating and managing a separate thread or process for each connection. - ---- - -### Examples of Multiplexing in Web Servers -1. **Node.js**: - - Node.js uses an event-driven, non-blocking I/O model powered by the `libuv` library. The `libuv` library provides a multiplexer (using `epoll`, `kqueue`, or `IOCP` depending on the platform) to handle multiple connections efficiently. - -2. **Nginx**: - - Nginx is known for its high performance and scalability, largely due to its use of an event-driven architecture. It uses `epoll` (on Linux) or `kqueue` (on BSD/macOS) to multiplex connections. - -3. **Apache (with Event MPM)**: - - Apache's Event Multi-Processing Module (MPM) uses a hybrid approach with multiplexing to handle multiple connections efficiently. - -4. **Go (Golang)**: - - Go's `net/http` package leverages goroutines and an internal multiplexer to handle thousands of concurrent connections efficiently. - ---- - -### Benefits of Multiplexing in Web Servers -1. **Scalability**: A single server can handle thousands or even millions of concurrent connections. -2. **Efficiency**: Reduces memory and CPU usage by avoiding the overhead of per-connection threads or processes. -3. **Responsiveness**: Non-blocking I/O ensures that the server remains responsive even under heavy load. - ---- - -### Challenges of Multiplexing -1. **Complexity**: Implementing multiplexing requires careful management of events and state, which can make the codebase more complex. -2. **Debugging**: Debugging asynchronous, event-driven code can be challenging compared to traditional blocking I/O models. -3. **Platform-Specific APIs**: Different operating systems provide different APIs for multiplexing (e.g., `epoll` on Linux vs. `kqueue` on BSD), requiring platform-specific implementations. - ---- - -### Conclusion -In the context of web servers, a **multiplexer** is a crucial component that enables efficient handling of multiple client connections using I/O multiplexing techniques. By leveraging non-blocking I/O and event-driven architectures, web servers can achieve high concurrency and scalability while minimizing resource usage. Popular web servers like Nginx, Node.js, and others rely heavily on multiplexing to deliver fast and reliable performance under heavy loads. - diff --git a/otm/EXPLAIN_run.md b/otm/EXPLAIN_run.md deleted file mode 100644 index f29ef20..0000000 --- a/otm/EXPLAIN_run.md +++ /dev/null @@ -1,262 +0,0 @@ -### Explanation of `run()` Function (Main Event Loop) - -This function is the **core event loop** of your web server. It continuously monitors multiple sockets (both **server sockets** and **client sockets**) using the `poll()` system call. The goal is to handle new connections and process incoming client requests efficiently. - ---- - -### **Breaking Down This Part:** -```cpp -// Process events -for (size_t i = 0; i < pollfds.size() && numEvents > 0; i++) { - if (pollfds[i].revents & POLLIN) { - numEvents--; - if (isServerSocket(pollfds[i].fd)) { - // Server socket has activity - accept new connection - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); - } else { - // Client socket has activity - handle client - handleClient(i); - } - } -} -``` ---- -### **1️⃣ Iterating Over `pollfds` (Monitored Sockets List)** -```cpp -for (size_t i = 0; i < pollfds.size() && numEvents > 0; i++) { -``` -- `pollfds` is a list of **all monitored sockets**, including: - - **Server sockets** (listening for new connections). - - **Client sockets** (handling HTTP requests). -- The loop iterates through each monitored socket. -- The loop runs **only while `numEvents > 0`**, meaning only active events are processed. - ---- - -### **2️⃣ Checking if There's Activity (`POLLIN` Event)** -```cpp -if (pollfds[i].revents & POLLIN) { -``` -- `pollfds[i].revents` stores the **events that happened** on the socket. -- `POLLIN` means **"there is data to read"**: - - For **server sockets**, this means a new client is trying to connect. - - For **client sockets**, this means the client has sent data (HTTP request). - ---- - -### **3️⃣ Handling Server Sockets (New Connections)** -```cpp -if (isServerSocket(pollfds[i].fd)) { - // Server socket has activity - accept new connection - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); -} -``` -- If the **socket is a server socket**, it means a new client is trying to connect. -- `getServerIndex(pollfds[i].fd)`: Finds which server the connection is for. -- `acceptConnection(serverIdx)`: Accepts the new client and adds it to `pollfds` for monitoring. - ---- - -### **4️⃣ Handling Client Sockets (Processing HTTP Requests)** -```cpp -else { - // Client socket has activity - handle client - handleClient(i); -} -``` -- If the socket **is not a server socket**, it means an **existing client** sent a request. -- `handleClient(i)`: Reads the client's HTTP request and responds with the appropriate HTML page. - ---- - -### **Summary** -✅ **Monitors multiple sockets** efficiently using `poll()` (no blocking). -✅ **Accepts new client connections** if a server socket is ready. -✅ **Reads and processes client HTTP requests** if a client socket is ready. - -This approach allows your server to handle **multiple connections at once** using a **single-threaded event-driven model**. 🚀### Explanation of `run()` Function (Main Event Loop) - -This function is the **core event loop** of your web server. It continuously monitors multiple sockets (both **server sockets** and **client sockets**) using the `poll()` system call. The goal is to handle new connections and process incoming client requests efficiently. - ---- - -### **Breaking Down This Part:** -```cpp -// Process events -for (size_t i = 0; i < pollfds.size() && numEvents > 0; i++) { - if (pollfds[i].revents & POLLIN) { - numEvents--; - if (isServerSocket(pollfds[i].fd)) { - // Server socket has activity - accept new connection - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); - } else { - // Client socket has activity - handle client - handleClient(i); - } - } -} -``` ---- -### **1️⃣ Iterating Over `pollfds` (Monitored Sockets List)** -```cpp -for (size_t i = 0; i < pollfds.size() && numEvents > 0; i++) { -``` -- `pollfds` is a list of **all monitored sockets**, including: - - **Server sockets** (listening for new connections). - - **Client sockets** (handling HTTP requests). -- The loop iterates through each monitored socket. -- The loop runs **only while `numEvents > 0`**, meaning only active events are processed. - ---- - -### **2️⃣ Checking if There's Activity (`POLLIN` Event)** -```cpp -if (pollfds[i].revents & POLLIN) { -``` -- `pollfds[i].revents` stores the **events that happened** on the socket. -- `POLLIN` means **"there is data to read"**: - - For **server sockets**, this means a new client is trying to connect. - - For **client sockets**, this means the client has sent data (HTTP request). - ---- - -### **3️⃣ Handling Server Sockets (New Connections)** -```cpp -if (isServerSocket(pollfds[i].fd)) { - // Server socket has activity - accept new connection - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); -} -``` -- If the **socket is a server socket**, it means a new client is trying to connect. -- `getServerIndex(pollfds[i].fd)`: Finds which server the connection is for. -- `acceptConnection(serverIdx)`: Accepts the new client and adds it to `pollfds` for monitoring. - ---- - -### **4️⃣ Handling Client Sockets (Processing HTTP Requests)** -```cpp -else { - // Client socket has activity - handle client - handleClient(i); -} -``` -- If the socket **is not a server socket**, it means an **existing client** sent a request. -- `handleClient(i)`: Reads the client's HTTP request and responds with the appropriate HTML page. - ---- - -### **Summary** -✅ **Monitors multiple sockets** efficiently using `poll()` (no blocking). -✅ **Accepts new client connections** if a server socket is ready. -✅ **Reads and processes client HTTP requests** if a client socket is ready. - -This approach allows your server to handle **multiple connections at once** using a **single-threaded event-driven model**. 🚀 - -### **What Does "Active Events Are Processed" Mean?** -In the `run()` function, your server is using the `poll()` system call to **monitor multiple sockets** (both **server sockets** and **client sockets**). - -🔹 **Active events** refer to **sockets that are ready for some action**—meaning there is something to be processed. -🔹 `poll()` tells us which sockets **have activity** (e.g., incoming connections or data to read). - -#### **How Are Active Events Processed?** -```cpp -for (size_t i = 0; i < pollfds.size() && numEvents > 0; i++) { - if (pollfds[i].revents & POLLIN) { - numEvents--; - if (isServerSocket(pollfds[i].fd)) { - // New connection on a server socket - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); - } else { - // Incoming data on a client socket - handleClient(i); - } - } -} -``` -- `pollfds[i].revents & POLLIN` → Checks if a socket has data to read (i.e., an **active event**). -- `numEvents--` → Decreases the count because an event was processed. -- The loop **stops early** if all events (`numEvents`) are processed. - ---- - -## **What Are Server Sockets?** -A **server socket** is a special socket that **listens for incoming connections** from clients. -Your server **does not** communicate directly through this socket; instead, it waits for a client to connect and then creates a **client socket** for communication. - -### **How Does a Server Socket Work?** -1. **Create a server socket** - ```cpp - int socketFd = socket(AF_INET, SOCK_STREAM, 0); - ``` -2. **Bind it to an IP and port** - ```cpp - bind(socketFd, (struct sockaddr *) &serverAddr, sizeof(serverAddr)); - ``` -3. **Start listening for connections** - ```cpp - listen(socketFd, 10); - ``` -4. **When a client connects, accept it** - ```cpp - int clientFd = accept(socketFd, (struct sockaddr*)&clientAddr, &clientAddrLen); - ``` - -### **How Is a Server Socket Processed in `run()`?** -```cpp -if (isServerSocket(pollfds[i].fd)) { - int serverIdx = getServerIndex(pollfds[i].fd); - acceptConnection(serverIdx); -} -``` -- If the socket is a **server socket**, it means a **new client** is trying to connect. -- `acceptConnection(serverIdx)` **accepts the connection** and creates a **new client socket**. - ---- - -## **What Are Client Sockets?** -A **client socket** is created when a server **accepts a connection** from a client. -This socket is used **for actual communication** (sending and receiving HTTP requests & responses). - -### **How Does a Client Socket Work?** -1. **Created when a client connects** - ```cpp - int clientFd = accept(serverSocketFd, (struct sockaddr*)&clientAddr, &clientAddrLen); - ``` -2. **Added to the `poll()` list** for monitoring. -3. **Receives data from the client** - ```cpp - recv(clientFd, buffer, BUFFER_SIZE, 0); - ``` -4. **Processes the HTTP request and sends a response** - ```cpp - send(clientFd, response.c_str(), response.size(), 0); - ``` -5. **Closes after the response is sent** - ```cpp - close(clientFd); - ``` - -### **How Is a Client Socket Processed in `run()`?** -```cpp -else { - handleClient(i); -} -``` -- If it's **not a server socket**, it means it's a **client socket** with **incoming data**. -- `handleClient(i)` reads and processes the **HTTP request** and **sends a response**. - ---- - -## **Final Summary** -1️⃣ **Server sockets** → Always **listening** for new connections. When a client connects, a **client socket** is created. -2️⃣ **Client sockets** → Used for **actual communication** with clients (sending/receiving data). -3️⃣ **poll() checks for active sockets** → If a socket has data, it gets processed. -4️⃣ **Active events** are handled based on **whether they come from a server socket (new connection) or client socket (HTTP request).** - -This design allows your server to **handle multiple clients simultaneously** without blocking! 🚀 - diff --git a/otm/POLL.md b/otm/POLL.md deleted file mode 100644 index c09ba7d..0000000 --- a/otm/POLL.md +++ /dev/null @@ -1,80 +0,0 @@ -`poll()` is a system call in the `` header used for monitoring multiple file descriptors to see if they have any pending I/O operations (read, write, or error conditions). It is an alternative to `select()`, but it scales better with a large number of file descriptors. - -### **Function Prototype:** -```c -#include - -int poll(struct pollfd *fds, nfds_t nfds, int timeout); -``` - -### **Parameters:** -- `fds`: Pointer to an array of `pollfd` structures, each describing a file descriptor to monitor. -- `nfds`: Number of elements in the `fds` array. -- `timeout`: Time (in milliseconds) to wait: - - `0` → Non-blocking mode (returns immediately). - - `-1` → Wait indefinitely. - - `> 0` → Waits for the specified milliseconds. - -### **Return Values:** -- **`> 0`** → Number of file descriptors with events. -- **`0`** → Timeout expired. -- **`-1`** → Error occurred (`errno` is set). - -### **Structure: `pollfd`** -```c -struct pollfd { - int fd; // File descriptor - short events; // Events to monitor - short revents; // Events returned -}; -``` - -### **Events (`events` and `revents` Fields):** -| Macro | Description | -|-------------|------------| -| `POLLIN` | Data available to read. | -| `POLLOUT` | Ready for writing. | -| `POLLERR` | Error condition. | -| `POLLHUP` | Hang-up detected. | -| `POLLNVAL` | Invalid file descriptor. | - ---- - -### **Example Usage:** -```c -#include -#include -#include - -int main() { - struct pollfd fds[1]; - fds[0].fd = 0; // Monitor stdin (file descriptor 0) - fds[0].events = POLLIN; // Check for input - - printf("Waiting for input...\n"); - int ret = poll(fds, 1, 5000); // Wait up to 5 seconds - - if (ret > 0) { - if (fds[0].revents & POLLIN) { - char buffer[100]; - read(0, buffer, sizeof(buffer)); // Read user input - printf("You entered: %s", buffer); - } - } else if (ret == 0) { - printf("Timeout! No input received.\n"); - } else { - perror("poll"); - } - - return 0; -} -``` - ---- - -### **When to Use `poll()`?** -- When you need to monitor multiple file descriptors efficiently. -- When `select()` becomes inefficient due to large `FD_SETSIZE` limits. -- When working with socket servers or event-driven applications. - -HTTP server! 🚀 \ No newline at end of file diff --git a/otm/ROADMAP.md b/otm/ROADMAP.md deleted file mode 100644 index fec20be..0000000 --- a/otm/ROADMAP.md +++ /dev/null @@ -1,102 +0,0 @@ -A roadmap to create a **non-blocking multiplexer server** in C++98 using the allowed functions. Focus on **concepts** and **system calls** to study, not code: - ---- - -### **1. Master the Basics of Socket Programming** -- **Study**: - - TCP/IP fundamentals (connection setup, client-server model). - - Socket API: `socket()`, `bind()`, `listen()`, `accept()`, `connect()`. - - Address resolution: `getaddrinfo()`, `freeaddrinfo()`. - - Error handling: `errno`, `strerror()`, `gai_strerror()`. -- **Goal**: Create a basic blocking server that handles one client at a time. - ---- - -### **2. Learn Non-Blocking I/O** -- **Study**: - - `fcntl()` to set `O_NONBLOCK` on sockets. - - Implications of non-blocking mode for `accept()`, `read()`, `write()`. - - Handling `EAGAIN`/`EWOULDBLOCK` errors. -- **Goal**: Modify the server to use non-blocking sockets. - ---- - -### **3. Choose a Multiplexing API** -Pick **one** of the following (recommended: `epoll` or `kqueue` for scalability): -- **`select()`**: - - Study `fd_set`, `FD_ZERO`, `FD_SET`, `select()`. - - Limitations: FD_SETSIZE limit, linear scan. -- **`poll()`**: - - Study `struct pollfd`, `poll()`. - - Better than `select()` but still O(n) complexity. -- **`epoll` (Linux)**: - - Study `epoll_create()`, `epoll_ctl()`, `epoll_wait()`. - - Edge-triggered (ET) vs. level-triggered (LT) modes. -- **`kqueue` (BSD/macOS)**: - - Study `kqueue()`, `kevent()`, event filters (`EVFILT_READ`, `EVFILT_WRITE`). - ---- - -### **4. Implement the Multiplexer** -- **Steps**: - 1. Create a listening socket and set it to non-blocking. - 2. Initialize the multiplexer (e.g., `epoll_create()`). - 3. Register the listening socket with the multiplexer to monitor `EPOLLIN` (or equivalent). - 4. Enter an event loop: - - Wait for events (e.g., `epoll_wait()`). - - For each event: - - **New connection**: `accept()` the client, set non-blocking, add to multiplexer. - - **Data available**: `read()` from client, process, and `write()` response. - - **Error/closure**: Remove the client from the multiplexer and `close()`. - ---- - -### **5. Handle Client Communication** -- **Study**: - - Partial reads/writes (buffer management). - - How to detect closed connections (`read()` returns 0). - - Avoiding blocking in `send()`/`recv()` using non-blocking sockets. -- **Goal**: Ensure the server can handle multiple clients simultaneously without blocking. - ---- - -### **6. Edge Cases & Cleanup** -- **Study**: - - Signal handling (e.g., `SIGPIPE` when writing to closed sockets). - - Graceful shutdown: `close()` sockets, free resources. - - Resource leaks (always `close()` file descriptors). -- **Goal**: Make the server robust against errors and crashes. - ---- - -### **7. Testing & Optimization** -- **Test**: - - Simultaneous connections (e.g., using `ab` or `wrk`). - - Stress-test with slow clients or partial data. -- **Optimize**: - - Use edge-triggered mode (for `epoll`/`kqueue`) to reduce syscalls. - - Reuse buffers and minimize system call overhead. - ---- - -### **Key Resources to Study** -1. **Man Pages**: - - `man 2 epoll_ctl`, `man 2 epoll_wait`, `man 2 select`, `man 2 poll`. - - `man 7 epoll` (overview of `epoll`). -2. **Books**: - - *Unix Network Programming* by Richard Stevens (Volume 1). - - *The Linux Programming Interface* by Michael Kerrisk (Chapters on I/O multiplexing). -3. **Online**: - - [Beej's Guide to Network Programming](https://beej.us/guide/bgnet/). - - Linux `epoll` tutorial (e.g., [https://linux.die.net/man/7/epoll](https://linux.die.net/man/7/epoll)). - ---- - -### **Final Checklist** -- [ ] Server uses non-blocking sockets. -- [ ] Multiplexer (e.g., `epoll`) monitors all sockets. -- [ ] Event loop handles new connections and data events. -- [ ] Graceful error handling and cleanup. -- [ ] Tested with concurrent clients. - -This roadmap ensures you build a scalable, non-blocking server using I/O multiplexing. Focus on understanding the system calls and their interactions! \ No newline at end of file diff --git a/otm/blueprint b/otm/blueprint deleted file mode 100644 index d688b42..0000000 --- a/otm/blueprint +++ /dev/null @@ -1,52 +0,0 @@ - -# Read Config file: - 1. open the file - 2. - - - -# Allowed functions -execve, dup, dup2, pipe, strerror, gai_strerror, -errno, dup, dup2, fork, socketpair, htons, htonl, -ntohs, ntohl, select, poll, epoll (epoll_create, -epoll_ctl, epoll_wait), kqueue (kqueue, kevent), -socket, accept, listen, send, recv, chdir bind, -connect, getaddrinfo, freeaddrinfo, setsockopt, -getsockname, getprotobyname, fcntl, close, read, -write, waitpid, kill, signal, access, stat, open, -opendir, readdir and closedir - -# # stat !!!!! || istream getw -https://www.youtube.com/watch?v=9J1nJOivdyw - -https://www.youtube.com/watch?v=gk6NL1pZi1M - -https://daverecycles.tumblr.com/post/3104767110/explain-event-driven-web-servers-to-your-grandma - -https://www.ibm.com/docs/en/i/7.4?topic=designs-using-poll-instead-select - -https://dev.to/sanjayrv/a-beginners-guide-to-socket-programming-in-c-5an5 - -https://www.scaler.com/topics/socket-programming-in-c/ - -https://www.codequoi.com/en/sockets-and-network-programming-in-c/ - - -https://www.linuxhowtos.org/C_C++/socket.htm - - - -# images: -->ME: https://cdn.intra.42.fr/users/a711a9f84150b908fab68560cd104a88/ochouati.jpg -->ACHAKKAF: https://cdn.intra.42.fr/users/6c955d7acbbe4d4742a144f3ccb36cb1/achakkaf.jpg -->MBOUJAMA: https://cdn.intra.42.fr/users/e59c85d7bf28db4223c76f57c6e536ac/mboujama.jpg - - -1. config -2. - - - -# WEBSERV::RUN() --> init(): init servers --> poll(): poll pollfds to monitor them diff --git a/req.rest b/req.rest deleted file mode 100644 index 2a09863..0000000 --- a/req.rest +++ /dev/null @@ -1,7 +0,0 @@ -GET http://127.0.0.1:8080/file.txt HTTP/1.1 -Connection: "keep-alive" - -### - -GET http://localhost:8080/test.py HTTP/1.1 -Content-Type: "text/html" diff --git a/srcs/cgi/ft_cgi.cpp b/srcs/cgi/ft_cgi.cpp deleted file mode 100644 index 62b41a6..0000000 --- a/srcs/cgi/ft_cgi.cpp +++ /dev/null @@ -1,12 +0,0 @@ -/* ************************************************************************** */ -/* */ -/* ::: :::::::: */ -/* ft_cgi.cpp :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: ochouati +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/03/08 01:40:42 by ochouati #+# #+# */ -/* Updated: 2025/03/08 01:40:43 by ochouati ### ########.fr */ -/* */ -/* ************************************************************************** */ - diff --git a/srcs/models/MimeTypes.cpp b/srcs/models/MimeTypes.cpp index 932a6ab..b064a5e 100644 --- a/srcs/models/MimeTypes.cpp +++ b/srcs/models/MimeTypes.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/25 16:47:27 by ochouati #+# #+# */ -/* Updated: 2025/05/24 14:44:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 12:17:35 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -49,5 +49,8 @@ MimeTypes::~MimeTypes() {} std::string MimeTypes::getMimeType(std::string filepath) { - return types[filepath.substr(filepath.find_last_of('.'))]; + int dot = filepath.find_last_of('.'); + if (dot == -1) + return "plain/text"; + return types[filepath.substr(dot)]; } \ No newline at end of file diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index f16b0c7..a29e1e9 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/25 17:03:56 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 12:20:26 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -68,7 +68,6 @@ size_t Response::getBodyLength() { return body.length(); } - Response::Response(struct ClientData &client, Request &req) { cgi = new Cgi(); isCgi = false; @@ -134,7 +133,6 @@ Response::Response(struct ClientData &client, Request &req) { body = ResponseUtils::getErrorPage(INTERNAL_SERVER_ERROR); headers["Content-Length"] = ResponseUtils::toString(body.length()); break ; - break; default: status_code = OK; status_text = "OK"; @@ -147,6 +145,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p bool isFile = true; std::string index; + if (path.find("..") != std::string::npos) { status_code = FORBIDDEN; return; @@ -170,22 +169,19 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p if (isFile) { if (!index.empty()) path += index; - - // ! Check if directory instead of dot !!! int dot = path.find_last_of("."); - if ((int)dot != -1) { - std::string extension = path.substr(dot); - if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { - body = cgi->executeCgiScript(req, serverEnv); - if (req.client.status != 0) - status_code = INTERNAL_SERVER_ERROR; - else - isCgi = true; - } - } + std::string extension = ""; + if (dot != -1) + extension = path.substr(dot); + if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { + body = cgi->executeCgiScript(req, serverEnv); + if (req.client.status != 0) + status_code = INTERNAL_SERVER_ERROR; + else + isCgi = true; + } else { struct stat fileStat; - fd = ResponseUtils::openFile(path); if (stat(path.c_str(), &fileStat) == -1) { status_code = INTERNAL_SERVER_ERROR; @@ -193,7 +189,7 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p } contentLength = fileStat.st_size; headers["Content-Length"] = FtPars::toString(contentLength); - headers["Content-Type"] = MimeTypes::getMimeType(path); + headers["Content-Type"] = MimeTypes::getMimeType(path); } } wServ->enablePOLLOUT(client.fd); diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index 866ef45..507ae0a 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/25 16:54:17 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 11:53:45 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -55,7 +55,9 @@ bool ResponseUtils::isDirectory(const std::string& path) { int ResponseUtils::openFile(const std::string& filepath) { int fd = open(filepath.c_str(), O_RDONLY); - // ? What is the file didn't open ? + // ? What if the file didn't open ? + + std::cout << COL_RED << "File descriptor: " << fd << END_COL << std::endl; return fd; } diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index 6c4b79c..c7bd21b 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -54,7 +54,7 @@ Server::Server(std::vector& arr, size_t& idx) this->allowedMethods["GET"] = true; this->allowedMethods["POST"] = false; this->allowedMethods["DELETE"] = false; - this->indexes["index.html"] = false; + // this->indexes["index.html"] = false; this->autoIndex = false; this->enableUploads = false; this->clientBodyTempPath = BODY_TEMP_PATH; diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 6100478..442eb22 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/25 17:32:18 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 11:52:36 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -151,6 +151,7 @@ void WebservHandler::handleRequest(ClientData& client) if (!client.isHeadersSent) { std::string res = client.resp->combineResponse(); std::cout << res << std::endl; + std::cout << COL_GREEN << "the file lenght: " << client.resp->getContentlength() << " the fd: " << client.resp->getFd() << END_COL << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; diff --git a/test/ping.sh b/test/ping.sh deleted file mode 100644 index f317b76..0000000 --- a/test/ping.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/bash - -HOST="172.217.17.14" -PORT=8090 -TOTAL_TESTS=20 -SUCCESS=0 -TIMEOUT=0.5 # Set timeout in seconds -echo "-------------- ✅❇️❌ -----------------" -./webserv configs/config.conf & - -for ((i=0; i < $TOTAL_TESTS; i++)) -do - # Run curl with a timeout of $TIMEOUT seconds - curl --max-time $TIMEOUT -s $HOST:$PORT 1>/dev/null - # Check if curl was successful - if [ $? -eq 0 ]; then - SUCCESS=$((SUCCESS + 1)) - fi -done - -echo "==> ✅success $SUCCESS/$TOTAL_TESTS" -echo "==> ❌failed $((TOTAL_TESTS - SUCCESS))" diff --git a/test/post_strees.sh b/test/post_strees.sh deleted file mode 100644 index aaf28da..0000000 --- a/test/post_strees.sh +++ /dev/null @@ -1,6 +0,0 @@ -TESTS_COUNT=10 - -for i in $(seq 1 $TESTS_COUNT); do - echo "Test $i" - bash post_testing.sh > "post_test_$i.log" & -done diff --git a/test/post_testing.sh b/test/post_testing.sh deleted file mode 100644 index 7621f54..0000000 --- a/test/post_testing.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/bash -PORT_BODY="OthersOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be savedOthers who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be saved who use this device wont see your activity, so you can browse more privately. This won't change how data is collected by websites you visit and the services they use, including Google. Downloads, bookmarks and reading list items will be saved. Learn more__end" - -PORT_1=8080 -PORT_2=8081 -PORT_3=8082 - -HOST="127.0.0.1" - -NUMBER_OF_RETRIES=1 -SUCCESS=0 -FAILED=0 -TIMEOUT=3 -# This script is used to run the tests for the project. () - -for ((i=0; i < $NUMBER_OF_RETRIES; i++)) -do - # USING POST with CURL - curl --max-time $TIMEOUT -X POST -d "$PORT_BODY PORT_1" -s $HOST:$PORT_1 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - - curl --max-time $TIMEOUT -X POST -d "$PORT_BODY PORT_2" -s $HOST:$PORT_2 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - - curl --max-time $TIMEOUT -X POST -d "$PORT_BODY PORT_3" -s $HOST:$PORT_3 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - - echo "Test ($i) All services are up and running.." - echo "Success: $SUCCESS" - echo "Failed: $FAILED" -done - -echo " =================== RESULTS ======================" - -echo "Test ($i) All services are up and running.." -echo "Success: $SUCCESS" -echo "Failed: $FAILED" -echo "Total: $((SUCCESS + FAILED))" -echo "Success Rate: $((SUCCESS * 100 / (SUCCESS + FAILED)))%" -echo "Failed Rate: $((FAILED * 100 / (SUCCESS + FAILED)))%" -echo "Test completed." diff --git a/test/runner.go b/test/runner.go deleted file mode 100644 index 659e1a0..0000000 --- a/test/runner.go +++ /dev/null @@ -1,145 +0,0 @@ -package main - -import ( - "bufio" - "fmt" - "net/http" - "os" - "strconv" - "strings" - "sync" - "time" -) - -type Data struct { - host string - port int - testNbr int - timeout int - runTime int // if >0, run for this many seconds instead of fixed count -} - -func main() { - // defaults - cfg := Data{"127.0.0.1", 8080, 10, 10, 0} - reader := bufio.NewReader(os.Stdin) - - fmt.Printf("Enter host (default %s): ", cfg.host) - if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { - cfg.host = strings.TrimSpace(input) - } - - fmt.Printf("Enter port (default %d): ", cfg.port) - if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { - if p, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { - cfg.port = p - } else { - fmt.Fprintf(os.Stderr, "Invalid port, using default %d\n", cfg.port) - } - } - - fmt.Printf("Enter number of requests (default %d): ", cfg.testNbr) - if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { - if n, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { - cfg.testNbr = n - } else { - fmt.Fprintf(os.Stderr, "Invalid count, using default %d\n", cfg.testNbr) - } - } - - fmt.Printf("Enter timeout in seconds (default %d): ", cfg.timeout) - if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { - if t, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { - cfg.timeout = t - } else { - fmt.Fprintf(os.Stderr, "Invalid timeout, using default %d\n", cfg.timeout) - } - } - - fmt.Printf("Enter running time in seconds (default %d; 0=disabled): ", cfg.runTime) - if input, _ := reader.ReadString('\n'); strings.TrimSpace(input) != "" { - if rt, err := strconv.Atoi(strings.TrimSpace(input)); err == nil { - cfg.runTime = rt - } else { - fmt.Fprintf(os.Stderr, "Invalid duration, using default %d\n", cfg.runTime) - } - } - - runTest(cfg) -} - -func runTest(d Data) { - url := fmt.Sprintf("http://%s:%d/", d.host, d.port) - mode := "fixed count" - if d.runTime > 0 { - mode = fmt.Sprintf("duration %ds", d.runTime) - } - fmt.Printf("\nTesting %s with %s, timeout %ds...\n\n", url, mode, d.timeout) - - client := http.Client{Timeout: time.Duration(d.timeout) * time.Second} - var ( - wg sync.WaitGroup - mu sync.Mutex - successes int - failures int - totalReqs int - ) - - start := time.Now() - - if d.runTime > 0 { - // time-based: loop until elapsed >= runTime - for time.Since(start) < time.Duration(d.runTime)*time.Second { - wg.Add(1) - go func() { - defer wg.Done() - resp, err := client.Get(url) - mu.Lock() - defer mu.Unlock() - totalReqs++ - if err != nil { - failures++ - return - } - defer resp.Body.Close() - if resp.StatusCode >= 200 && resp.StatusCode < 300 { - successes++ - } else { - failures++ - } - }() - } - } else { - // count-based: fire exactly testNbr concurrent requests - for i := 0; i < d.testNbr; i++ { - wg.Add(1) - go func() { - defer wg.Done() - resp, err := client.Get(url) - mu.Lock() - defer mu.Unlock() - totalReqs++ - if err != nil { - failures++ - return - } - defer resp.Body.Close() - if resp.StatusCode >= 200 && resp.StatusCode < 300 { - successes++ - } else { - failures++ - } - }() - } - } - - wg.Wait() - elapsed := time.Since(start) - - fmt.Println("----- Results -----") - fmt.Printf("Total requests sent: %d\n", totalReqs) - fmt.Printf("Successful (2xx): %d\n", successes) - fmt.Printf("Failed (error/other): %d\n", failures) - fmt.Printf("Total time elapsed: %v\n", elapsed) - fmt.Printf("Requests per second: %.2f\n", float64(totalReqs)/elapsed.Seconds()) -} diff --git a/test/strees.sh b/test/strees.sh deleted file mode 100644 index 0e57a52..0000000 --- a/test/strees.sh +++ /dev/null @@ -1,6 +0,0 @@ -TESTS_COUNT=5 - -for i in $(seq 1 $TESTS_COUNT); do - echo "Test $i" - bash testing.sh > "test_$i.log" & -done diff --git a/test/test01.sh b/test/test01.sh deleted file mode 100644 index 7fbd5fc..0000000 --- a/test/test01.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/bash - -TIMEOUT_DURATION=4 # Set the timeout duration (in seconds) - -run_with_timeout() { - local cmd="$1" - local timeout="$2" - # Run the command in the background - $cmd & - local cmd_pid=$! - # Wait for the command or timeout - ( sleep $timeout && kill -9 $cmd_pid ) & # Kill the process if it times out - local timeout_pid=$! - # Wait for the process to finish - wait $cmd_pid - local exit_status=$? - # Clean up timeout handler - kill $timeout_pid 2>/dev/null - return $exit_status -} - -echo "Test should work✅......." -run_with_timeout "../webserv ../configs/config.conf" $TIMEOUT_DURATION -if [ $? -eq 137 ]; then - echo "Error: webserv test01 - 01 timed out" -elif [ $? -ne 0 ]; then - echo "Error: webserv test01 - 01 failed" -else - echo "webserv test01 - 01 success" -fi - -echo "Test should failed❌......." -run_with_timeout "./webserv configs/con-fig.conf" $TIMEOUT_DURATION -if [ $? -eq 137 ]; then - echo "Error: webserv test01 - 02 timed out" -elif [ $? -ne 0 ]; then - echo "Error: webserv test01 - 02 failed" -else - echo "webserv test01 - 02 success" -fi diff --git a/test/testing.sh b/test/testing.sh deleted file mode 100644 index 9e552f0..0000000 --- a/test/testing.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/bash - -PORT_1=8080 -PORT_2=5555 -PORT_3=9090 -PORT_4=8081 - -HOST="127.0.0.1" - -NUMBER_OF_RETRIES=500 -SUCCESS=0 -FAILED=0 -TIMEOUT=2 -# This script is used to run the tests for the project. - -for ((i=0; i < $NUMBER_OF_RETRIES; i++)) -do - # USING CURL - curl --max-time $TIMEOUT -s $HOST:$PORT_1 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - curl --max-time $TIMEOUT -s $HOST:$PORT_2 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - curl --max-time $TIMEOUT -s $HOST:$PORT_3 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - curl --max-time $TIMEOUT -s $HOST:$PORT_4 1>/dev/null - if [ $? -ne 0 ]; then - FAILED=$((FAILED + 1)) - else - SUCCESS=$((SUCCESS + 1)) - fi - echo "Test ($i) All services are up and running.." - echo "Success: $SUCCESS" - echo "Failed: $FAILED" - -done - -echo " =================== RESULTS ======================" - -echo "Test ($i) All services are up and running.." -echo "Success: $SUCCESS" -echo "Failed: $FAILED" -echo "Total: $((SUCCESS + FAILED))" -echo "Success Rate: $((SUCCESS * 100 / (SUCCESS + FAILED)))%" -echo "Failed Rate: $((FAILED * 100 / (SUCCESS + FAILED)))%" -echo "Test completed." diff --git a/var/www/app/index.html b/var/www/app/index.html deleted file mode 100644 index 3a3078a..0000000 --- a/var/www/app/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - Document - - -
    -

    this is a website

    -
    - - \ No newline at end of file diff --git a/var/www/html/cookie.php b/var/www/html/cookie.php deleted file mode 100644 index c939910..0000000 --- a/var/www/html/cookie.php +++ /dev/null @@ -1,100 +0,0 @@ - 0) { - $input = file_get_contents('php://input'); - } - return $input; -} - -function parse_cgi_cookies() { - $cookies = []; - if (isset($_SERVER['HTTP_COOKIE'])) { - foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { - $parts = explode('=', $cookie, 2); - if (count($parts) === 2) { - $cookies[trim($parts[0])] = urldecode(trim($parts[1])); - } - } - } - return $cookies; -} - -function handle_request() { - $cookies = parse_cgi_cookies(); - if (!isset($cookies['session_id'])) { - $cookies['session_id'] = bin2hex(random_bytes(16)); - header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); - } - $post_data = []; - if ($_SERVER['REQUEST_METHOD'] === 'POST') { - $raw_input = parse_cgi_input(); - if (!empty($raw_input)) { - parse_str($raw_input, $post_data); - } - if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { - $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; - header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); - } - } - header('Content-Type: text/html'); - ?> - - - - CGI Request Information - - - -

    CGI Request Information

    - -

    Cookies:

    - - - - $value): ?> - - -
    Cookie NameValue
    - -

    No cookies found.

    - - -

    POST Data:

    -
    - -

    Set a Cookie

    -
    -
    -
    - -
    - -

    Server Environment:

    -
     $value) {
    -            echo htmlspecialchars($key) . ": " . 
    -                (is_array($value) 
    -                    ? print_r($value, true) 
    -                    : htmlspecialchars($value)) . "\n";
    -        }
    -        ?>
    - - - \ No newline at end of file diff --git a/var/www/html/file b/var/www/html/file new file mode 100644 index 0000000..95d09f2 --- /dev/null +++ b/var/www/html/file @@ -0,0 +1 @@ +hello world \ No newline at end of file diff --git a/var/www/html/index.html b/var/www/html/i0ndex.html similarity index 100% rename from var/www/html/index.html rename to var/www/html/i0ndex.html diff --git a/var/www/html/index.py b/var/www/html/index.py new file mode 100644 index 0000000..e62ab81 --- /dev/null +++ b/var/www/html/index.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python3 + +import cgi + +# Set the content type +print("Content-Type: text/html") +print() # Blank line to indicate the end of headers + +# Start HTML output +print("") +print("Hello, World!") +print("") +print("

    Hello, World from Python CGI!

    ") +print("") +print("") diff --git a/var/www/html/script.sh b/var/www/html/script.sh index 2fba4b5..93e00ee 100644 --- a/var/www/html/script.sh +++ b/var/www/html/script.sh @@ -1 +1,18 @@ -echo "hello world"; \ No newline at end of file +#!/bin/bash + + +cat < + + + + + SS + + +

    Welcome to SS

    + + +EOF diff --git a/var/www/html/setcookie.php b/var/www/html/setcookie.php deleted file mode 100644 index f0cf73f..0000000 --- a/var/www/html/setcookie.php +++ /dev/null @@ -1,36 +0,0 @@ -"; - } else { - echo "Please provide both cookie name and value.
    "; - } -} -?> - - - - - - - Set Cookie - - -
    -        
    -    
    -
    -
    -
    - -
    - - \ No newline at end of file diff --git a/var/www/html/uploads/script.js b/var/www/html/uploads/script.js deleted file mode 100644 index 89281e8..0000000 --- a/var/www/html/uploads/script.js +++ /dev/null @@ -1,58 +0,0 @@ -function addNewTask() { - const task = document.getElementById("task"); - const tasks = document.getElementById("tasks"); - - if (task.value.trim().length !== 0) { - const newTask = document.createElement('div'); - newTask.className = "added-task"; - newTask.id = "added-task"; - - const newTaskCheckbox = document.createElement("input"); - newTaskCheckbox.type = "checkbox"; - newTaskCheckbox.className = "task-checkbox"; - newTaskCheckbox.id = "task-checkbox"; - newTask.appendChild(newTaskCheckbox); - - const newTaskContent = document.createElement("div"); - newTaskContent.className = "added-task-content"; - newTaskContent.id = "added-task-content"; - newTaskContent.innerText = task.value; - newTask.appendChild(newTaskContent); - - const newCloseBtn = document.createElement("button"); - newCloseBtn.className = "close-btn"; - newCloseBtn.id = "close-btn"; - newTask.appendChild(newCloseBtn); - - tasks.appendChild(newTask); - task.value = ""; - } -} - -document.getElementById("plus-btn").addEventListener('click', (e) => { - addNewTask(); -}); - -document.getElementById("task").addEventListener("keypress", (e) => { - if (e.key == "Enter") { - addNewTask(); - } -}); - -document.getElementById('board').addEventListener('click', (e) => { - if (e.target.classList.contains('close-btn')) { - e.target.closest('.added-task').remove(); - } -}); - -document.addEventListener('click', function (event) { - if (event.target.classList.contains('added-task-content') || ) { - event.target.classList.toggle('task-checked'); - } -}); - - - - -// const checkbox = document.querySelector(".tasks"); -// console.log(checkbox.childElementCount); \ No newline at end of file diff --git a/websites/main/cookie.php b/websites/main/cookie.php deleted file mode 100644 index 9f27de3..0000000 --- a/websites/main/cookie.php +++ /dev/null @@ -1,104 +0,0 @@ - 0) { - $input = file_get_contents('php://input'); - } - return $input; -} - -function parse_cgi_cookies() { - $cookies = []; - if (isset($_SERVER['HTTP_COOKIE'])) { - foreach (explode('; ', $_SERVER['HTTP_COOKIE']) as $cookie) { - $parts = explode('=', $cookie, 2); - if (count($parts) === 2) { - $cookies[trim($parts[0])] = urldecode(trim($parts[1])); - } - } - } - return $cookies; -} - -function handle_request() { - $cookies = parse_cgi_cookies(); - - if (!isset($cookies['session_id'])) { - $cookies['session_id'] = bin2hex(random_bytes(16)); - header("Set-Cookie: session_id={$cookies['session_id']}; Path=/; HttpOnly; Max-Age=3600", false); - } - - $post_data = []; - if ($_SERVER['REQUEST_METHOD'] === 'POST') { - $raw_input = parse_cgi_input(); - if (!empty($raw_input)) { - parse_str($raw_input, $post_data); - } - - if (isset($post_data['cookie_name']) && isset($post_data['cookie_value'])) { - $cookies[$post_data['cookie_name']] = $post_data['cookie_value']; - header("Set-Cookie: {$post_data['cookie_name']}={$post_data['cookie_value']}; Path=/", false); - } - } - - header('Content-Type: text/html'); - - ?> - - - - CGI Request Information - - - -

    CGI Request Information

    - -

    Cookies:

    - - - - $value): ?> - - -
    Cookie NameValue
    - -

    No cookies found.

    - - -

    POST Data:

    -
    - -

    Set a Cookie

    -
    -
    -
    - -
    - -

    Server Environment:

    -
     $value) {
    -            echo htmlspecialchars($key) . ": " . 
    -                (is_array($value) 
    -                    ? print_r($value, true) 
    -                    : htmlspecialchars($value)) . "\n";
    -        }
    -        ?>
    - - - \ No newline at end of file diff --git a/websites/main/scripts/page.sh b/websites/main/scripts/page.sh deleted file mode 100644 index e3c59cc..0000000 --- a/websites/main/scripts/page.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - - -cat << EOF -Content-Type: text/html - - - - - - - Webserv | Bach - -

    Welcome from Bash CGI

    - - - -EOF \ No newline at end of file diff --git a/websites/simple/index.html b/websites/simple/index.html deleted file mode 100644 index 259b276..0000000 --- a/websites/simple/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - Simple - - -
    - Simple Example
    -
    - - \ No newline at end of file diff --git a/websites/upload/index.html b/websites/upload/index.html deleted file mode 100644 index b615a2d..0000000 --- a/websites/upload/index.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - Document - - - - -
    -
    - - -
    -
    - - - - \ No newline at end of file From f3e3d7a620a6a9f8361a5cb4b5707af4c8b73639 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 26 May 2025 15:01:27 +0100 Subject: [PATCH 64/66] save point 2025/05/26-15:01:22 --- configs/config.conf | 28 ++++++++++++ srcs/models/Request.cpp | 69 ++++++++++++++---------------- srcs/models/Response.cpp | 2 +- srcs/models/WebservHandler.cpp | 2 +- var/www/html/main/script.js | 39 +++++++++-------- var/www/html/uploads/config.conf | 73 ++++++++++++++++++++++++++++++++ 6 files changed, 154 insertions(+), 59 deletions(-) create mode 100644 var/www/html/uploads/config.conf diff --git a/configs/config.conf b/configs/config.conf index e96cef4..c536b11 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -57,4 +57,32 @@ port = "8888" server_name = "second.local" location_root = "websites/simple" +############################################################################### +# Server 4 +############################################################################### +[server.xxxx] +# required +host = "127.0.0.1" +# required +port = "5050" +# optional +server_name = "myserver.local" +# optional +client_max_body_size = "40000000000" +# Timeouts IN SECONDS +# optional +client_timeout = "555" +# optional +# redirects = "/index.html:/page.html" +# optional +client_body_temp_path= "var/tmp" + +# location_root required +location_root = "var/www/html/main" +indexes = "index.html,index.php,index.py" +allowed_methods = "POST,DELETE,GET" +autoindex = "on" +upload_enabled = "on" +upload_store = "var/www/html/main/uploads/" +cgi = "/bin/bash:.sh" diff --git a/srcs/models/Request.cpp b/srcs/models/Request.cpp index 297abb9..7badc7d 100644 --- a/srcs/models/Request.cpp +++ b/srcs/models/Request.cpp @@ -6,70 +6,65 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/20 12:43:53 by mboujama #+# #+# */ -/* Updated: 2025/05/24 14:43:24 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 14:16:42 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ #include "../../headers/Request.hpp" #include "../../headers/ResponseUtils.hpp" -// GET /favicon.ico HTTP/1.1 -// Host: 127.0.0.1:8080 -// User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:123.0) Gecko/20100101 Firefox/123.0 -// Accept: image/avif,image/webp,*/* -// Accept-Language: en-US,en;q=0.5 -// Accept-Encoding: gzip, deflate, br -// Connection: keep-alive -// Referer: http://127.0.0.1:8080/ -// Sec-Fetch-Dest: image -// Sec-Fetch-Mode: no-cors -// Sec-Fetch-Site: same-origin Request::Request(const std::string &requestString, ClientData& c) :client(c) { - size_t methodEnd = requestString.find_first_of(" \t"); + std::string requestLine = requestString.substr(0, requestString.find("\r\n", 0)); + + size_t methodEnd = requestLine.find(' '); this->method = requestString.substr(0, methodEnd); - size_t pathStart = requestString.find_first_not_of(" \t", methodEnd); - size_t pathEnd = requestString.find_first_of(" \t", pathStart); - this->path = requestString.substr(pathStart, pathEnd - pathStart); - - if (this->path.find_first_of("?") != std::string::npos) - { - this->query = this->path.substr(this->path.find_first_of("?") + 1); - size_t queryStart = this->path.find_first_of("?") + 1; - while (true) - { - size_t queryEnd = this->path.find_first_of("&", queryStart); - if (queryEnd != queryStart) - this->vQuery.push_back(this->path.substr(queryStart, queryEnd - queryStart)); + size_t pathStart = requestLine.find_first_not_of(' ', methodEnd); + size_t pathEnd = requestLine.find(' ', pathStart); + std::string fullPath = requestLine.substr(pathStart, pathEnd - pathStart); + + size_t queryPos = fullPath.find("?"); + if (queryPos != std::string::npos) { + this->path = fullPath.substr(0, queryPos); + this->query = fullPath.substr(queryPos + 1); + size_t queryStart = 0; + while (queryStart < this->query.length()) { + size_t queryEnd = this->path.find('&', queryStart); if (queryEnd == std::string::npos) + queryEnd = this->query.length(); + if (queryEnd > queryStart) + this->vQuery.push_back(this->query.substr(queryStart, queryEnd - queryStart)); + if (queryEnd == this->query.length()) break; - queryStart = ++queryEnd; + queryStart = queryEnd + 1; } - this->path = this->path.substr(0, this->path.find_first_of("?")); } + else + this->path = fullPath; - size_t versionStart = requestString.find_last_of(" \t", pathEnd) + 1; - size_t versionEnd = requestString.find_first_of("\n", versionStart); - this->version = requestString.substr(versionStart, versionEnd - versionStart - 1); // -1 for /r before \n in the request + size_t versionStart = requestLine.find_last_of(' ', pathEnd) + 1; + this->version = requestLine.substr(versionStart); // -1 for /r before \n in the request std::string headerKey, headerValue; + size_t headerStart = requestLine.length() + 2; + size_t headerEnd = headerStart; while (true) { - size_t headerStart = requestString.find_first_not_of(" \t", versionEnd + 1); if (headerStart == std::string::npos || requestString[headerStart] == '\r' || requestString[headerStart] == '\n') break; - size_t headerKeyEnd = requestString.find_first_of(":", headerStart); + size_t headerKeyEnd = requestString.find_first_of(':', headerStart); if (headerKeyEnd == std::string::npos) break; headerKey = requestString.substr(headerStart, headerKeyEnd - headerStart); - size_t headerValueStart = requestString.find_first_not_of(": \t", headerKeyEnd); - versionEnd = requestString.find_first_of("\n", headerValueStart); - headerValue = requestString.substr(headerValueStart, versionEnd - headerValueStart - 1); + size_t headerValueStart = requestString.find_first_not_of(": ", headerKeyEnd); + headerEnd = requestString.find_first_of("\r\n", headerValueStart); + headerValue = requestString.substr(headerValueStart, headerEnd - headerValueStart); this->headerPairs[headerKey] = headerValue; + headerStart = requestString.find_first_not_of("\r\n", headerEnd); // I remove +1 for here } - this->body = requestString.substr(versionEnd + 3, requestString.size() - versionEnd); + this->body = requestString.substr(headerEnd + 3, requestString.size() - headerEnd); } diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index a29e1e9..76b7af4 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/26 12:20:26 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 14:00:13 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 442eb22..10905d5 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/26 11:52:36 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 13:13:39 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/var/www/html/main/script.js b/var/www/html/main/script.js index 56a90ba..f9b719f 100644 --- a/var/www/html/main/script.js +++ b/var/www/html/main/script.js @@ -135,24 +135,31 @@ if (uploadButton) { const uploadStatus = document.getElementById('uploadStatus'); const fileName = document.getElementById('fileName'); const file = fileInput?.files[0]; - + if (file) { - // Disable the button and show the loading spinner uploadButton.disabled = true; uploadButton.innerHTML = ' Uploading...'; - - // Create FormData and append the file + const formData = new FormData(); formData.append('file', file); - // Send the file to the server using fetch fetch('/uploads', { method: 'POST', - body: formData + body: formData, + mode: 'no-cors' // This is required for your case where the backend is not modified + }) + .then(response => { + console.log("the status Code : ", response.status); + // Check if the status code is in the 2xx range + if (response.ok) { + // If status is 2xx, we assume success even with an empty body + return { success: true }; + } else { + // If not, return failure + return { success: false }; + } }) - .then(response => response.json()) // Assuming server returns JSON response .then(data => { - // Handle success response uploadButton.disabled = false; uploadButton.innerHTML = ' Upload'; @@ -190,7 +197,6 @@ if (uploadButton) { }); } else if (uploadStatus) { - // If no file is selected uploadStatus.textContent = 'Please select a file to upload.'; uploadStatus.className = 'status-message error'; uploadStatus.style.display = 'block'; @@ -199,6 +205,9 @@ if (uploadButton) { } + + + const deleteButton = document.getElementById('deleteButton'); if (deleteButton) { deleteButton.addEventListener('click', () => { @@ -207,23 +216,16 @@ if (deleteButton) { const path = deletePath?.value; if (path) { - // Disable the button and show the loading spinner deleteButton.disabled = true; deleteButton.innerHTML = ' Deleting...'; + const deleteUrl = `http://127.0.0.1:5050${path}`; - // Construct the URL for the DELETE request, using the path entered in the input field - const deleteUrl = `http://127.0.0.1:8080${path}`; - - // For now, just simulate the DELETE request using a console log - // (since no backend is available to handle the DELETE request) console.log(`Sending DELETE request to: ${deleteUrl}`); - // Send DELETE request to the server fetch(deleteUrl, { method: 'DELETE', }) .then(response => { - // Check if the response status code is in the 2xx range (successful) if (response.ok) { deleteButton.disabled = false; deleteButton.innerHTML = ' Delete'; @@ -234,14 +236,12 @@ if (deleteButton) { deleteStatus.style.display = 'block'; } - // Clear the input field if (deletePath) deletePath.value = ''; } else { throw new Error('Error: ' + response.statusText); } }) .catch(error => { - // Handle any errors (network issues or server errors) console.error('Error:', error); deleteButton.disabled = false; deleteButton.innerHTML = ' Delete'; @@ -257,7 +257,6 @@ if (deleteButton) { } }); } else if (deleteStatus) { - // If no path is entered deleteStatus.textContent = 'Please enter a file or folder path.'; deleteStatus.className = 'status-message error'; deleteStatus.style.display = 'block'; diff --git a/var/www/html/uploads/config.conf b/var/www/html/uploads/config.conf new file mode 100644 index 0000000..b1b2d95 --- /dev/null +++ b/var/www/html/uploads/config.conf @@ -0,0 +1,73 @@ +############################################################################### +# Server 1: Default server +############################################################################### +[server.default] +# required +host = "127.0.0.1" +# required +port = "8080,7070,3000" +# optional +server_name = "myserver.local" +# optional +client_max_body_size = "40000000000" +# Timeouts IN SECONDS +# optional +client_timeout = "555" +# optional +redirects = "/index.html:/page.html" +# optional +client_body_temp_path= "var/tmp" + +# location_root required +location_root = "var/www/html" +indexes = "index.html,index.php,index.py" +allowed_methods = "POST,DELETE,GET" +autoindex = "on" +upload_enabled = "on" +upload_store = "var/www/html/uploads/" +cgi = "/bin/bash:.sh" + + +############################################################################### +# Server 2 +############################################################################### +[server.second] +host = "127.0.0.1" +port = "9000" +server_name = "second.local" +location_root = "var/www/html/magic" + + +############################################################################### +# Server 3 +############################################################################### +[server.second] +host = "0.0.0.0" +port = "9999" +server_name = "second.local" +location_root = "var/www/html" +autoindex = "on" + +############################################################################### +# Server 3 +############################################################################### +[server.second] +host = "0.0.0.0" +port = "8888" +server_name = "second.local" +location_root = "websites/simple" + +############################################################################### +# Server 4 +############################################################################### +[server.second] +host = "0.0.0.0" +port = "7777" +server_name = "second.local" +location_root = "var/www/html/main" +allowed_methods = "POST,DELETE,GET" +autoindex = "on" +upload_enabled = "on" +upload_store = "var/www/html/main/uploads/" +indexes = "index.html,index.php,index.py" +client_max_body_size = "40000000000" From 251ca1c030ac5f27f15db31f38a8b2b2b1b10ff3 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 26 May 2025 15:59:59 +0100 Subject: [PATCH 65/66] Everything Cleanned, --- configs/config.conf | 52 +---- run.sh | 5 - srcs/models/Response.cpp | 37 +-- srcs/models/ResponseUtils.cpp | 13 +- srcs/models/Server.cpp | 2 +- srcs/models/Upload.cpp | 33 +-- srcs/models/Webserv.cpp | 6 +- srcs/models/WebservHandler.cpp | 9 +- srcs/parsing/config/readConfig.cpp | 2 - srcs/utils/httpResponseErrors.cpp | 8 +- var/www/html/autoindex/folder1/index.html | 11 - .../autoindex/folder2/subfolder2/hello.py | 0 var/www/html/autoindex/folder3/Main.java | 5 - var/www/html/autoindex/folder3/README.md | 3 - var/www/html/autoindex/program.go | 0 var/www/html/autoindex/script.sh | 0 var/www/html/cookie.py | 29 --- var/www/html/file | 1 - var/www/html/file.html | 16 -- var/www/html/file.txt | 1 - var/www/html/i0ndex.html | 213 ------------------ var/www/html/index.py | 15 -- var/www/html/main/script.js | 7 +- var/www/html/main/scripts/1337.php | 24 -- var/www/html/main/scripts/{ss.sh => bash.sh} | 0 var/www/html/main/scripts/cookie_example.py | 101 +++++++++ var/www/html/main/scripts/session_example.py | 79 +++++++ var/www/html/post.py | 47 ---- var/www/html/script.sh | 18 -- .../html/{main/ts.php => simple/index.html} | 7 +- var/www/html/uploads/config.conf | 73 ------ 31 files changed, 221 insertions(+), 596 deletions(-) delete mode 100755 run.sh delete mode 100644 var/www/html/autoindex/folder1/index.html delete mode 100644 var/www/html/autoindex/folder2/subfolder2/hello.py delete mode 100644 var/www/html/autoindex/folder3/Main.java delete mode 100644 var/www/html/autoindex/folder3/README.md delete mode 100644 var/www/html/autoindex/program.go delete mode 100644 var/www/html/autoindex/script.sh delete mode 100644 var/www/html/cookie.py delete mode 100644 var/www/html/file delete mode 100644 var/www/html/file.html delete mode 100644 var/www/html/file.txt delete mode 100644 var/www/html/i0ndex.html delete mode 100644 var/www/html/index.py delete mode 100644 var/www/html/main/scripts/1337.php rename var/www/html/main/scripts/{ss.sh => bash.sh} (100%) create mode 100644 var/www/html/main/scripts/cookie_example.py create mode 100644 var/www/html/main/scripts/session_example.py delete mode 100644 var/www/html/post.py delete mode 100644 var/www/html/script.sh rename var/www/html/{main/ts.php => simple/index.html} (69%) mode change 100755 => 100644 delete mode 100644 var/www/html/uploads/config.conf diff --git a/configs/config.conf b/configs/config.conf index c536b11..8f88e04 100644 --- a/configs/config.conf +++ b/configs/config.conf @@ -5,7 +5,7 @@ # required host = "127.0.0.1" # required -port = "8080,7070,3000" +port = "8080,7070" # optional server_name = "myserver.local" # optional @@ -14,17 +14,18 @@ client_max_body_size = "40000000000" # optional client_timeout = "555" # optional -redirects = "/index.html:/page.html" +# redirects = "/index.html:/page.html" # optional client_body_temp_path= "var/tmp" # location_root required -location_root = "var/www/html" +location_root = "var/www/html/main" +# required indexes = "index.html,index.php,index.py" allowed_methods = "POST,DELETE,GET" autoindex = "on" upload_enabled = "on" -upload_store = "var/www/html/uploads/" +upload_store = "var/www/html/main/uploads/" cgi = "/bin/bash:.sh" @@ -36,53 +37,16 @@ host = "127.0.0.1" port = "9000" server_name = "second.local" location_root = "var/www/html/magic" +indexes = "index.html,index.php,index.py" ############################################################################### # Server 3 ############################################################################### -[server.second] +[server.third] host = "0.0.0.0" port = "9999" server_name = "second.local" -location_root = "var/www/html" -autoindex = "on" - -############################################################################### -# Server 3 -############################################################################### -[server.second] -host = "0.0.0.0" -port = "8888" -server_name = "second.local" -location_root = "websites/simple" - -############################################################################### -# Server 4 -############################################################################### -[server.xxxx] -# required -host = "127.0.0.1" -# required -port = "5050" -# optional -server_name = "myserver.local" -# optional -client_max_body_size = "40000000000" -# Timeouts IN SECONDS -# optional -client_timeout = "555" -# optional -# redirects = "/index.html:/page.html" -# optional -client_body_temp_path= "var/tmp" - -# location_root required -location_root = "var/www/html/main" +location_root = "var/www/html/simple" indexes = "index.html,index.php,index.py" -allowed_methods = "POST,DELETE,GET" -autoindex = "on" -upload_enabled = "on" -upload_store = "var/www/html/main/uploads/" -cgi = "/bin/bash:.sh" diff --git a/run.sh b/run.sh deleted file mode 100755 index c20162d..0000000 --- a/run.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -rm -rf var/www/html/main/uploads/* -echo "🧪Starting Compiling🛠 files📁.🔋.🔋." -sleep 0.4 -make -j 10 && clear && ./webserv configs/config.conf diff --git a/srcs/models/Response.cpp b/srcs/models/Response.cpp index 76b7af4..9405b51 100644 --- a/srcs/models/Response.cpp +++ b/srcs/models/Response.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/20 09:24:00 by mboujama #+# #+# */ -/* Updated: 2025/05/26 14:00:13 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 15:50:15 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -51,7 +51,6 @@ size_t Response::getContentlength() const { std::string Response::combineResponse(void) { std::ostringstream res; - std::cout << COL_RED << body << END_COL << std::endl; res << http_version << " " << status_code << " " << status_text << "\r\n"; std::map::iterator it; for (it = headers.begin(); it != headers.end(); it++) @@ -167,20 +166,21 @@ void Response::handleGet(struct ClientData &client, Request &req, std::string &p else status_code = FORBIDDEN; } if (isFile) { - if (!index.empty()) + if (!index.empty()) { path += index; + req.setPath(std::string("/").append(index)); + } int dot = path.find_last_of("."); std::string extension = ""; if (dot != -1) extension = path.substr(dot); - if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { + if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { body = cgi->executeCgiScript(req, serverEnv); if (req.client.status != 0) status_code = INTERNAL_SERVER_ERROR; else isCgi = true; - } - else { + } else { struct stat fileStat; fd = ResponseUtils::openFile(path); if (stat(path.c_str(), &fileStat) == -1) { @@ -201,16 +201,22 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & status_code = FORBIDDEN; return; } - int dot = path.find_last_of("."); - if ((int)dot != -1) { - std::string extension = path.substr(dot); - if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { - body = cgi->executeCgiScript(req, serverEnv); - if (req.client.status != 0) - status_code = INTERNAL_SERVER_ERROR; - else - isCgi = true; + if (!ResponseUtils::isDirectory(path)) { + int dot = path.find_last_of("."); + if ((int)dot != -1) { + std::string extension = path.substr(dot); + if (!extension.compare(".py") || client.server->getCGI(extension).compare("not_found")) { + body = cgi->executeCgiScript(req, serverEnv); + if (req.client.status != 0) + status_code = INTERNAL_SERVER_ERROR; + else + isCgi = true; + } } + } + if (isCgi) { + status_code = OK; + status_text = "OK"; } else { status_code = CREATED; status_text = "Created"; @@ -222,7 +228,6 @@ void Response::handlePost(struct ClientData &client, Request &req, std::string & } void Response::handleDelete(struct ClientData &client, Request &req, std::string &path) { - (void) client; if (path.find("..") != std::string::npos) { status_code = FORBIDDEN; return; diff --git a/srcs/models/ResponseUtils.cpp b/srcs/models/ResponseUtils.cpp index 507ae0a..d32f716 100644 --- a/srcs/models/ResponseUtils.cpp +++ b/srcs/models/ResponseUtils.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/14 12:29:43 by mboujama #+# #+# */ -/* Updated: 2025/05/26 11:53:45 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 15:48:14 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -55,10 +55,6 @@ bool ResponseUtils::isDirectory(const std::string& path) { int ResponseUtils::openFile(const std::string& filepath) { int fd = open(filepath.c_str(), O_RDONLY); - // ? What if the file didn't open ? - - std::cout << COL_RED << "File descriptor: " << fd << END_COL << std::endl; - return fd; } @@ -75,7 +71,6 @@ std::string ResponseUtils::isIndexFileExist(std::map &indexes dir = opendir(path.c_str()); if (!dir) { - std::cout << COL_MAGENTA << "Can't open directory in 'isIndexFileExist'" << END_COL << std::endl; return ""; } while ((ent = readdir(dir))) { @@ -117,9 +112,6 @@ std::string ResponseUtils::getErrorPage(RESPONSE_CODE status) { content.append(line); } } - else - std::cout << "File doesn't opened" << std::endl; - return content; } @@ -154,7 +146,6 @@ std::string ResponseUtils::generateAutoIndex(std::string filepath) { bool ResponseUtils::deleteFile(const std::string& path) { if (remove(path.c_str()) != 0) { - std::cerr << "Error deleting file: " << path << std::endl; return false; } return true; @@ -165,7 +156,6 @@ bool ResponseUtils::deleteFolder(const std::string& path) DIR* dir = opendir(path.c_str()); if (!dir) { - std::cout << COL_MAGENTA << "Can't open directory in 'deleteFolder'" << END_COL << std::endl; return false; } struct dirent* entry; @@ -181,7 +171,6 @@ bool ResponseUtils::deleteFolder(const std::string& path) } closedir(dir); if (remove(path.c_str()) != 0) { - std::cerr << "Error deleting directory: " << path << std::endl; return (false); } return true; diff --git a/srcs/models/Server.cpp b/srcs/models/Server.cpp index c7bd21b..6b6ade2 100644 --- a/srcs/models/Server.cpp +++ b/srcs/models/Server.cpp @@ -306,7 +306,7 @@ void Server::setNonBlocking(int fd) bool Server::isValidServer(void) { - if (this->rootPath.empty() || (this->port == INT_MAX || !this->port) || this->host.empty()) { + if (this->rootPath.empty() || (this->port == INT_MAX || !this->port) || this->host.empty() || !this->getIndexes().size()) { std::cerr << COL_RED << "Invalid server configuration" << END_COL << std::endl; return (false); } diff --git a/srcs/models/Upload.cpp b/srcs/models/Upload.cpp index 3f6e8f3..519a202 100644 --- a/srcs/models/Upload.cpp +++ b/srcs/models/Upload.cpp @@ -1,23 +1,6 @@ #include "../../headers/Webserv.hpp" #include "../../headers/HttpErrors.hpp" -/*-------- LARGE FILES ALGORITHM: --------*/ -// Receive chunk → store in buffer -// Scan for --boundary123: -// Found: -// Save previous data to temp file -// Parse headers for new filename -// Start new temp file -// Not found: Append to current temp file -// On --boundary123--: -// Finalize last file -// Delete partial data if any -// Only after ALL boundaries processed: -// Rename temp files to final names -/*-----------------------------------------*/ - - -/// get file name from a buffer request std::string getFileName(const std::string &buffer){ std::string fileName; size_t i = buffer.find("filename=\""); @@ -37,19 +20,13 @@ void closeFiles(ClientData &client) for (it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it) close(it->second); - // client.uploadFd.clear(); } -//! set client.currentFileFd to -1 -//! call setheader() function (I am not sure about the function name) -// You should put all tmp files in a temp folder -// you should close all the files + you should reset the files void processMultipartUpload(ClientData &client) { ssize_t written; std::string tmpFileName; - // std::cout << COL_RED << "uploading..." << END_COL << std::endl; while(!client.request.empty()) { if (client.uploadFd.find(client.fileName) == client.uploadFd.end()){ size_t headers = client.request.find("\r\n\r\n"); @@ -60,13 +37,13 @@ void processMultipartUpload(ClientData &client) HttpErrors::httpResponse403(client); } if (!client.fileName.empty()) { - tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; //! remove prefix & chan + add temp folder + tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + client.fileName; if (client.uploadFd.find(client.fileName) != client.uploadFd.end()) close(client.uploadFd[client.fileName]); client.uploadFd[client.fileName] = open(tmpFileName.c_str() ,O_CREAT | O_TRUNC | O_WRONLY, 0644); if (client.uploadFd[client.fileName] == -1){ closeFiles(client); - break; //! close all the files + break; } } client.request.erase(0, headers + 4); @@ -99,17 +76,13 @@ void processMultipartUpload(ClientData &client) endBoundary > 2 ? endBoundary - 2: 0); for(std::map::iterator it = client.uploadFd.begin(); it != client.uploadFd.end(); ++it){ tmpFileName = client.server->getClientBodyTempPath() + "/upload_" + it->first; - std::cout << COL_GREEN << "tmpfile: "<< tmpFileName << END_COL << std::endl; - std::cout << COL_GREEN << "dist: "<< client.server->getUploadsPath() + it->first << END_COL << std::endl; - std::rename(tmpFileName.c_str(), (client.server->getUploadsPath() + it->first).c_str()); //! handle if it failed + std::rename(tmpFileName.c_str(), (client.server->getUploadsPath() + it->first).c_str()); std::remove(tmpFileName.c_str()); - std::cout << COL_GREEN << "finish uploading..." << END_COL << std::endl; } client.request.clear(); closeFiles(client); client.fileName.clear(); client.uploadFd.clear(); - //! REQUEST_COMPLETE } else return; diff --git a/srcs/models/Webserv.cpp b/srcs/models/Webserv.cpp index a124f5c..78d13d0 100644 --- a/srcs/models/Webserv.cpp +++ b/srcs/models/Webserv.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/21 17:25:44 by ochouati #+# #+# */ -/* Updated: 2025/05/24 16:24:36 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 15:49:30 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -146,7 +146,6 @@ void Webserv::handleClientRequest(int fd) void Webserv::prepareClientResponse(ClientData& client) { - // std::cout << " PPP, the client is: " << client.fd << std::endl; try { Request req(client.headers.append(client.request), client); if (!client.resp) @@ -155,9 +154,7 @@ void Webserv::prepareClientResponse(ClientData& client) this->enablePOLLOUT(client.fd); } catch(std::exception& e) { - std::cerr << COL_RED << "Error while preparing response: " << e.what() << END_COL << std::endl; this->_closeClient(client.fd); - std::cout << COL_RED << " *-*-*-*-*-*-*-*-*-*-* " << END_COL << std::endl; throw std::runtime_error("Error while preparing response"); } } @@ -177,7 +174,6 @@ void Webserv::timeoutHandler(void) mapIt it = _requests.begin(); while (it != _requests.end()) { if (FtPars::getCurrentTimeMs() - it->second.startTime > (it->second.server->getTimeout() * 1000)) { - std::cout << "Client fd " << it->first << " timed out" << std::endl; int clientFd = it->first; ++it; this->_closeClient(clientFd); diff --git a/srcs/models/WebservHandler.cpp b/srcs/models/WebservHandler.cpp index 10905d5..a2f869b 100644 --- a/srcs/models/WebservHandler.cpp +++ b/srcs/models/WebservHandler.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/04/09 15:40:21 by ochouati #+# #+# */ -/* Updated: 2025/05/26 13:13:39 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 15:45:09 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -150,8 +150,6 @@ void WebservHandler::handleRequest(ClientData& client) return this->_closeClient(client.fd); if (!client.isHeadersSent) { std::string res = client.resp->combineResponse(); - std::cout << res << std::endl; - std::cout << COL_GREEN << "the file lenght: " << client.resp->getContentlength() << " the fd: " << client.resp->getFd() << END_COL << std::endl; send(client.fd, res.c_str(), res.size(), 0); client.isHeadersSent = true; return; @@ -160,13 +158,11 @@ void WebservHandler::handleRequest(ClientData& client) char s__buffer[SEND_SIZE]; int n = read(client.resp->getFd(), s__buffer, SEND_SIZE - 1); if (n <= 0) { - std::cout << COL_RED << "Error while reading from file, for client/N: " << client.fd << " -- " << n << END_COL << std::endl; //! ****************************************************** return this->_closeClient(client.fd); } s__buffer[n] = '\0'; int j = send(client.fd, s__buffer, n, 0); if (j <= 0 || j != n) { - std::cout << COL_RED << "Error while sending socket, for client/N: " << client.fd << " -- " << j << END_COL << std::endl; //! ****************************************************** return this->_closeClient(client.fd); } client.bytesSent += j; @@ -189,7 +185,6 @@ void WebservHandler::validateRequestHeaders(ClientData& client) void WebservHandler::validateUrl(ClientData& client) { - // 414 Request-URI Too Long (more than URL_MAX_SIZE characters) size_t start = client.headers.find_first_of("/", 0); size_t end = client.headers.find(" HTTP/1.1", start); if (start == std::string::npos || end == std::string::npos) @@ -197,9 +192,7 @@ void WebservHandler::validateUrl(ClientData& client) std::string url = client.headers.substr(start, end - start); if (end - start > URL_MAX_SIZE) return HttpErrors::httpResponse414(client), this->enablePOLLOUT(client.fd); - // 400 Bad Request url contains invalid characters if (url.find_first_not_of(ALLOWED_CHARS) != std::string::npos) { - std::cout << COL_MAGENTA << "Invalid URL: " << url << END_COL << std::endl; return HttpErrors::httpResponse400(client), this->enablePOLLOUT(client.fd); } } diff --git a/srcs/parsing/config/readConfig.cpp b/srcs/parsing/config/readConfig.cpp index 16f36fa..1dd5745 100644 --- a/srcs/parsing/config/readConfig.cpp +++ b/srcs/parsing/config/readConfig.cpp @@ -29,9 +29,7 @@ std::vector& readConfig::getServers() readConfig::~readConfig(void) { - std::cout << "The Destructor of Conf.....\n"; delete this->lines; - } const char *readConfig::OpenFileException::what() const throw() diff --git a/srcs/utils/httpResponseErrors.cpp b/srcs/utils/httpResponseErrors.cpp index 4cf38fb..8f8d724 100644 --- a/srcs/utils/httpResponseErrors.cpp +++ b/srcs/utils/httpResponseErrors.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/05/08 14:10:39 by ochouati #+# #+# */ -/* Updated: 2025/05/25 11:02:54 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 15:45:44 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -19,19 +19,16 @@ void HttpErrors::httpResponse414(ClientData& client) { "Content-Type: text/html\r\n" "Content-Length: 59\r\n" "\r\n

    414 Request-URI Too Long

    "; - std::cout << COL_RED << response << END_COL << std::endl; client.error = response; client.progress = READY; wServ->enablePOLLOUT(client.fd); } void HttpErrors::httpResponse400(ClientData& client) { - std::cout << " ************************* HTTP 400 ERROR ************************* " << std::endl; std::string response = "HTTP/1.1 400 Bad Request\r\n" "Content-Type: text/html\r\n" "Content-Length: 50\r\n" "\r\n

    400 Bad Request

    "; - std::cout << COL_RED << response << END_COL << std::endl; client.error = response; client.progress = READY; wServ->enablePOLLOUT(client.fd); @@ -42,7 +39,6 @@ void HttpErrors::httpResponse413(ClientData& client) { "Content-Type: text/html\r\n" "Content-Length: 56\r\n" "\r\n

    413 Payload Too Large

    "; - std::cout << COL_RED << response << END_COL << std::endl; client.error = response; client.progress = READY; wServ->enablePOLLOUT(client.fd); @@ -53,7 +49,6 @@ void HttpErrors::httpResponse405(ClientData& client) { "Content-Type: text/html\r\n" "Content-Length: 57\r\n" "\r\n

    405 Method Not Allowed

    "; - std::cout << COL_RED << response << END_COL << std::endl; client.error = response; client.progress = READY; wServ->enablePOLLOUT(client.fd); @@ -64,7 +59,6 @@ void HttpErrors::httpResponse403(ClientData& client) { "Content-Type: text/html\r\n" "Content-Length: 48\r\n" "\r\n

    403 Forbidden

    "; - std::cout << COL_RED << response << END_COL << std::endl; client.error = response; client.progress = READY; wServ->enablePOLLOUT(client.fd); diff --git a/var/www/html/autoindex/folder1/index.html b/var/www/html/autoindex/folder1/index.html deleted file mode 100644 index cc268a3..0000000 --- a/var/www/html/autoindex/folder1/index.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - Document - - - Index 1 - - \ No newline at end of file diff --git a/var/www/html/autoindex/folder2/subfolder2/hello.py b/var/www/html/autoindex/folder2/subfolder2/hello.py deleted file mode 100644 index e69de29..0000000 diff --git a/var/www/html/autoindex/folder3/Main.java b/var/www/html/autoindex/folder3/Main.java deleted file mode 100644 index d95f0de..0000000 --- a/var/www/html/autoindex/folder3/Main.java +++ /dev/null @@ -1,5 +0,0 @@ -class Main { - public static void main(String[] argv) { - System.out.println("Hello world!"); - } -} \ No newline at end of file diff --git a/var/www/html/autoindex/folder3/README.md b/var/www/html/autoindex/folder3/README.md deleted file mode 100644 index d0a3966..0000000 --- a/var/www/html/autoindex/folder3/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# Title - -## Hello World \ No newline at end of file diff --git a/var/www/html/autoindex/program.go b/var/www/html/autoindex/program.go deleted file mode 100644 index e69de29..0000000 diff --git a/var/www/html/autoindex/script.sh b/var/www/html/autoindex/script.sh deleted file mode 100644 index e69de29..0000000 diff --git a/var/www/html/cookie.py b/var/www/html/cookie.py deleted file mode 100644 index 6a8bbc9..0000000 --- a/var/www/html/cookie.py +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env python3 - -import http.cookies -import os - -# Create a cookie -cookie = http.cookies.SimpleCookie() -cookie["user"] = "John" -cookie["user"]["path"] = "/" # Cookie available site-wide -cookie["user"]["max-age"] = 3600 # Expires in 1 hour - -# Print headers -print("Content-Type: text/html") -print(cookie.output()) # This sets the cookie in the browser -print() - -# Print simple HTML -print(""" - - - - Set Cookie - - -

    Python CGI Cookie Example

    -

    Cookie 'user' is set to 'John'.

    - - -""") diff --git a/var/www/html/file b/var/www/html/file deleted file mode 100644 index 95d09f2..0000000 --- a/var/www/html/file +++ /dev/null @@ -1 +0,0 @@ -hello world \ No newline at end of file diff --git a/var/www/html/file.html b/var/www/html/file.html deleted file mode 100644 index 0ae9ea6..0000000 --- a/var/www/html/file.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Document - - - This to test the content length of the file - Lorem ipsum dolor sit amet consectetur adipisicing elit. Quia tenetur nisi non blanditiis minima? Possimus similique ipsa voluptatem, soluta atque vitae doloribus assumenda aliquam ex nesciunt tempore. Officia, magni nemo! Lorem ipsum dolor, sit amet consectetur adipisicing elit. Ut deserunt a recusandae rerum, doloremque tempore laudantium aliquam saepe unde maiores neque dolore molestiae eum sint ullam perferendis iure sequi nisi. - Repellendus ipsam nam temporibus natus officiis quasi consectetur porro, eum iure. Tempore maxime velit ex minima! Quaerat veritatis repellendus nemo fugit, commodi optio deserunt nostrum, pariatur explicabo ducimus delectus velit? - Voluptatem ea quisquam ab vel tempora nesciunt aspernatur beatae deleniti accusamus! Eius, totam nam? Laudantium, numquam impedit repellendus corporis quidem modi earum deleniti provident eligendi sapiente cupiditate ratione corrupti. Sit! - Dolor suscipit perferendis voluptas quas consequuntur, et magni voluptate asperiores ad ducimus odit quia veniam, assumenda praesentium distinctio explicabo excepturi cum voluptates natus non nulla repudiandae quo? Nemo, distinctio corrupti. - Repellat vero placeat eum et exercitationem enim quam ducimus totam ipsam! Recusandae quo fugiat aliquam, expedita accusamus iste! Incidunt aut nihil ea rem commodi similique labore reprehenderit distinctio exercitationem quia. - - \ No newline at end of file diff --git a/var/www/html/file.txt b/var/www/html/file.txt deleted file mode 100644 index 5069a31..0000000 --- a/var/www/html/file.txt +++ /dev/null @@ -1 +0,0 @@ -One foot in front of the other, One more step, and then one more. Jack's only thoughts were to keep moving no matter how much his body screamed to stop and rest. He's lost almost all his energy and his entire body ached beyond belief, but he forced himself to take another step. Then another. And then one more. \ No newline at end of file diff --git a/var/www/html/i0ndex.html b/var/www/html/i0ndex.html deleted file mode 100644 index 5b86e7f..0000000 --- a/var/www/html/i0ndex.html +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - Webserv - - - - - -
    -

    Welcome to Webserv!

    -
    - - -
    - - -
    - -
    -

    Random Quote

    -

    "Click below to get a random quote!"

    - -
    - - -
    -

    Random News

    -

    "Click below for random news articles!"

    - -
    - - -
    -

    User Profile

    -

    "Click below to generate a random user profile!"

    - -
    -
    - - -
    -

    Webserv © 2025 | All Rights Reserved

    -
    - - - - - diff --git a/var/www/html/index.py b/var/www/html/index.py deleted file mode 100644 index e62ab81..0000000 --- a/var/www/html/index.py +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env python3 - -import cgi - -# Set the content type -print("Content-Type: text/html") -print() # Blank line to indicate the end of headers - -# Start HTML output -print("") -print("Hello, World!") -print("") -print("

    Hello, World from Python CGI!

    ") -print("") -print("") diff --git a/var/www/html/main/script.js b/var/www/html/main/script.js index f9b719f..2c490f2 100644 --- a/var/www/html/main/script.js +++ b/var/www/html/main/script.js @@ -146,16 +146,13 @@ if (uploadButton) { fetch('/uploads', { method: 'POST', body: formData, - mode: 'no-cors' // This is required for your case where the backend is not modified + mode: 'no-cors' }) .then(response => { console.log("the status Code : ", response.status); - // Check if the status code is in the 2xx range if (response.ok) { - // If status is 2xx, we assume success even with an empty body return { success: true }; } else { - // If not, return failure return { success: false }; } }) @@ -218,7 +215,7 @@ if (deleteButton) { if (path) { deleteButton.disabled = true; deleteButton.innerHTML = ' Deleting...'; - const deleteUrl = `http://127.0.0.1:5050${path}`; + const deleteUrl = `http://127.0.0.1:8080${path}`; console.log(`Sending DELETE request to: ${deleteUrl}`); diff --git a/var/www/html/main/scripts/1337.php b/var/www/html/main/scripts/1337.php deleted file mode 100644 index a00e0ea..0000000 --- a/var/www/html/main/scripts/1337.php +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - PHP | 1337 | Webserv - - -
    - $x is impair"; - echo "

    $y is pair

    "; - $random_number = rand(1, 100); - if ($random_number % 2 == 0) { - echo "

    $y win beceause the number is: $random_number, So it's pair

    "; - } else { - echo "

    $x win beceause the number is: $random_number, So it's impair

    "; - } - ?> -
    - - \ No newline at end of file diff --git a/var/www/html/main/scripts/ss.sh b/var/www/html/main/scripts/bash.sh similarity index 100% rename from var/www/html/main/scripts/ss.sh rename to var/www/html/main/scripts/bash.sh diff --git a/var/www/html/main/scripts/cookie_example.py b/var/www/html/main/scripts/cookie_example.py new file mode 100644 index 0000000..167ed7c --- /dev/null +++ b/var/www/html/main/scripts/cookie_example.py @@ -0,0 +1,101 @@ +#!/usr/bin/env python3 +import cgi +import cgitb +import os +from http import cookies + +cgitb.enable() + +print("Content-type: text/html") + +cookie = cookies.SimpleCookie() +cookie.load(os.environ.get('HTTP_COOKIE', '')) + +form = cgi.FieldStorage() +text_color = form.getvalue('textColor', '') +bg_color = form.getvalue('bgColor', '') + +if text_color and bg_color: + print(f"Set-Cookie: textColor={text_color}; Path=/") + print(f"Set-Cookie: bgColor={bg_color}; Path=/") + cookie = cookies.SimpleCookie() + cookie['textColor'] = text_color + cookie['bgColor'] = bg_color + +current_text = cookie.get('textColor', cookies.SimpleCookie()).value if 'textColor' in cookie else '#000000' +current_bg = cookie.get('bgColor', cookies.SimpleCookie()).value if 'bgColor' in cookie else '#ffffff' + +html = f""" + + + + Color Cookie Setter + + + +

    Color Settings

    +""" + +if text_color and bg_color: + html += f''' +
    + Colors set successfully!
    + Text: {current_text}
    + Background: {current_bg} +
    + ''' +elif text_color or bg_color: + html += '
    Please provide both text and background colors
    ' + +html += f""" +
    +
    + + +
    +
    + + +
    + +
    +
    +

    Current Colors:

    +

    This text is in {current_text}

    +

    Page background is {current_bg}

    +
    + + +""" + +print(html) diff --git a/var/www/html/main/scripts/session_example.py b/var/www/html/main/scripts/session_example.py new file mode 100644 index 0000000..e90cce2 --- /dev/null +++ b/var/www/html/main/scripts/session_example.py @@ -0,0 +1,79 @@ +#!/usr/bin/env python3 +import cgi +import cgitb +import os +from http import cookies +import json +import hashlib +import time + +cgitb.enable() + +SESSION_FILE = "/tmp/sessions.json" + +def load_sessions(): + if not os.path.exists(SESSION_FILE): + return {} + with open(SESSION_FILE, 'r') as f: + return json.load(f) + +def save_sessions(sessions): + with open(SESSION_FILE, 'w') as f: + json.dump(sessions, f) + +def generate_session_id(): + return hashlib.sha256(str(time.time()).encode()).hexdigest()[:16] + +print("Content-type: text/html") + +sessions = load_sessions() +cookie = cookies.SimpleCookie() +cookie.load(os.environ.get('HTTP_COOKIE', '')) + +if 'session_id' in cookie: + session_id = cookie['session_id'].value + session_data = sessions.get(session_id, {}) +else: + session_id = generate_session_id() + session_data = {} + print(f"Set-Cookie: session_id={session_id}; Path=/") + +form = cgi.FieldStorage() +if 'color' in form: + session_data['color'] = form.getvalue('color') + sessions[session_id] = session_data + save_sessions(sessions) + +current_color = session_data.get('color', '#000000') + +html = f""" + + + + Session Example + + + +

    Session Color Picker

    +

    Current session ID: {session_id}

    +

    Your selected color: {current_color}

    + +
    + + + +
    + +

    This color will persist across page reloads.

    + + +""" + +print(html) diff --git a/var/www/html/post.py b/var/www/html/post.py deleted file mode 100644 index d0f9cbf..0000000 --- a/var/www/html/post.py +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env python3 -import cgi -import cgitb -cgitb.enable() - -print("Content-type: text/html") - -form = cgi.FieldStorage() -cookie_key = form.getvalue('cookieKey', '') -cookie_value = form.getvalue('cookieValue', '') - -html = """ - - - - Cookie Setter - - - -

    Set Cookie

    -""" - -if cookie_key and cookie_value: - print(f"Set-Cookie: {cookie_key}={cookie_value}; Path=/") - html += f'
    Cookie set successfully: {cookie_key}={cookie_value}
    ' -elif cookie_key or cookie_value: - html += '
    Please provide both cookie name and value
    ' - -html += """ -
    -
    - - -
    -
    - - -
    - -
    - - -""" - -print(html) \ No newline at end of file diff --git a/var/www/html/script.sh b/var/www/html/script.sh deleted file mode 100644 index 93e00ee..0000000 --- a/var/www/html/script.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - - -cat < - - - - - SS - - -

    Welcome to SS

    - - -EOF diff --git a/var/www/html/main/ts.php b/var/www/html/simple/index.html old mode 100755 new mode 100644 similarity index 69% rename from var/www/html/main/ts.php rename to var/www/html/simple/index.html index be3ff2c..6691b21 --- a/var/www/html/main/ts.php +++ b/var/www/html/simple/index.html @@ -3,12 +3,9 @@ - Document + Simple - + Simple \ No newline at end of file diff --git a/var/www/html/uploads/config.conf b/var/www/html/uploads/config.conf deleted file mode 100644 index b1b2d95..0000000 --- a/var/www/html/uploads/config.conf +++ /dev/null @@ -1,73 +0,0 @@ -############################################################################### -# Server 1: Default server -############################################################################### -[server.default] -# required -host = "127.0.0.1" -# required -port = "8080,7070,3000" -# optional -server_name = "myserver.local" -# optional -client_max_body_size = "40000000000" -# Timeouts IN SECONDS -# optional -client_timeout = "555" -# optional -redirects = "/index.html:/page.html" -# optional -client_body_temp_path= "var/tmp" - -# location_root required -location_root = "var/www/html" -indexes = "index.html,index.php,index.py" -allowed_methods = "POST,DELETE,GET" -autoindex = "on" -upload_enabled = "on" -upload_store = "var/www/html/uploads/" -cgi = "/bin/bash:.sh" - - -############################################################################### -# Server 2 -############################################################################### -[server.second] -host = "127.0.0.1" -port = "9000" -server_name = "second.local" -location_root = "var/www/html/magic" - - -############################################################################### -# Server 3 -############################################################################### -[server.second] -host = "0.0.0.0" -port = "9999" -server_name = "second.local" -location_root = "var/www/html" -autoindex = "on" - -############################################################################### -# Server 3 -############################################################################### -[server.second] -host = "0.0.0.0" -port = "8888" -server_name = "second.local" -location_root = "websites/simple" - -############################################################################### -# Server 4 -############################################################################### -[server.second] -host = "0.0.0.0" -port = "7777" -server_name = "second.local" -location_root = "var/www/html/main" -allowed_methods = "POST,DELETE,GET" -autoindex = "on" -upload_enabled = "on" -upload_store = "var/www/html/main/uploads/" -indexes = "index.html,index.php,index.py" -client_max_body_size = "40000000000" From 6d3169d688d3f781131bf1fb820462d9665cb949 Mon Sep 17 00:00:00 2001 From: Otman Chouati Date: Mon, 26 May 2025 16:06:13 +0100 Subject: [PATCH 66/66] More cleanning.. --- Makefile | 2 +- main.cpp | 4 ---- srcs/models/Cgi.cpp | 6 +----- 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 2d87a09..a69225b 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ CPP = c++ -CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ -g -fsanitize=address +CPPFLAGS = -Wall -Wextra -Werror -std=c++98 -I./headers/ NAME=webserv diff --git a/main.cpp b/main.cpp index 05067de..2bfb991 100644 --- a/main.cpp +++ b/main.cpp @@ -26,9 +26,6 @@ char **serverEnv; std::string *notFound; WebservHandler *wServ; - -//! Remove files from var/tmp - int server(char *argFile, char **env) { try { readConfig conf; @@ -44,7 +41,6 @@ int server(char *argFile, char **env) { int main(int ac, char **av, char **env) { - // atexit(ll); //! -->delete if (ac != 2) { std::cout << "config file require!" << std::endl; return (1); diff --git a/srcs/models/Cgi.cpp b/srcs/models/Cgi.cpp index 8b94480..f77bb3a 100644 --- a/srcs/models/Cgi.cpp +++ b/srcs/models/Cgi.cpp @@ -6,7 +6,7 @@ /* By: ochouati +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: Invalid date by #+# #+# */ -/* Updated: 2025/05/25 17:59:48 by ochouati ### ########.fr */ +/* Updated: 2025/05/26 16:01:51 by ochouati ### ########.fr */ /* */ /* ************************************************************************** */ @@ -81,7 +81,6 @@ std::string Cgi::locateExecutable(const std::vector &searchPaths, c std::string Cgi::executeCgiScript(Request &request, char **systemEnv) { - std::cout << COL_YELLOW << "Executing CGI script: Status: " << request.client.status << std::endl; request.convertToEnv(); char **envVariables = createEnvironmentVariables(request); std::vector binaryPaths = extractBinaryPaths(systemEnv); @@ -153,13 +152,10 @@ std::string Cgi::executeCgiScript(Request &request, char **systemEnv) } close(stdoutPipe[0]); - std::cout << COL_RED << "the status: " << request.client.status << std::endl; waitpid(processId, &request.client.status, 0); - std::cout << COL_RED << "the status after WPID: " << request.client.status << std::endl; request.client.status = WEXITSTATUS(request.client.status); if (request.client.status) request.client.status = -1; - std::cout << COL_RED << "==> the status: " << request.client.status << std::endl; } else {

    ~dNz>jmnv;>;g&{kovw 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⁣^XB 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�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